发帖前我已经在论坛搜索“防止jsp地址栏显示变量”及“jsp地址栏显示变量”,无法解决问题。现发帖请教:
我做了一个登录页面a.jsp,在没有输入用户名和密码的情况下点击“登录”按钮,页面就会跳转到预设的出错信息页面b.jsp,但发现在地址栏出现a.jsp页面的变量,这样“http://localhost/login_bak.jsp?staff_id=&staff_psw=&c_login=%B5%C7+%C2%BC”,感觉很不好,请教:何做才能“防止jsp地址栏显示变量”
我做了一个登录页面a.jsp,在没有输入用户名和密码的情况下点击“登录”按钮,页面就会跳转到预设的出错信息页面b.jsp,但发现在地址栏出现a.jsp页面的变量,这样“http://localhost/login_bak.jsp?staff_id=&staff_psw=&c_login=%B5%C7+%C2%BC”,感觉很不好,请教:何做才能“防止jsp地址栏显示变量”
1.post方式提交
2.重定向
直接重定向到错误页面不就好了
或者重定向到登陆页面另一做法是使用POST提交,转发给登陆页面
操作很简单的,只需要写一个配置文件,配置正则表达式,也就是你要重定向的URL
然后在web.xml里面声明一下
在页面a.jsp有以下代码:
<%
String User_id="";
String User_psw="";
if(request.getParameter("c_login")!=null)
{
User_id=request.getParameter("staff_id");
User_psw=request.getParameter("staff_psw");
if(User_id!=""&&User_psw!="")
{
login.id=User_id;
login.psw=User_psw;
}
else
{
RequestDispatcher rd = request.getRequestDispatcher("b.jsp");
rd.forward(request,response);
}
}
%>于是:在没有输入用户名和密码的情况下点击“登录”按钮,页面就会跳转到预设的出错信息页面b.jsp,但发现在地址栏出现a.jsp页面的变量,这样“http://localhost/login_bak.jsp?staff_id=&staff_psw=&c_login=%B5%C7+%C2%BC”,感觉很不好,请教:何做才能“防止jsp地址栏显示变量”?