清空session的问题
我在一个退出的页面中进行session.invalidate();然后返回到了另一个页面。
但是但我在地址拦直接输入URL后,还能进入不允许进入的页面,这是为什么呀?
比如 用的什么浏览器, 做了什么事(如登陆/注销).... 楼主能不能说的具体点很含糊 汗了,登陆之后,点击退出,返回到登陆页面,在登陆页面的时候,我在地址栏里输入某个页面的路径,然后就能按照曾经登陆的用户的权限浏览网页,但是我在点击退出的时候是做过清除session的操作的,不知道这是为什么。
够清楚了吗?
利用线程
具体我不记得 你可以去百度 你是怎么判断用户权限的呢,登陆满足哪些条件恩在退出时,是否做足了相应处理呢.
看不到代码,无法解答 后台管理的每个页面都要加权限控制,判断Session
例:
<%
if (session.getAttribute("username")==null) {
out.println("<script>alert("权限不够")</script>");
}
%>
如果你加了,而且session.invalidate()了,这样还能进,估计就是你人品问题了
或者你用用,session.removeAttribute("username")
回复 8# 的帖子
对session为null的判断加了,你说的那两个清session的方法我都试过,没作用,真头疼 那就是你人品问题了 在页面里面加上下面几句话再试试response.setHeader("progma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0); 这几句是做什么用的啊?在什么地方加?在清session的时候吗 在清session的页面或Servlet 还是不行 人品问题,坚定完毕 我在index.jsp里打印当前用户的权限,发现只有当我正常登录的时候才有结果,当我退出之后再用写地址的方式打开index页面发现并没有出现打印结果,就好像index的页面代码没运行过一样,但是页面却正常显示了,这是怎么回事啊
这是index页面的判断session的代码
System.out.println(session.getAttribute("user") + "/" + session.getAttribute("pope"));String strSession = "";
if (session.getAttribute("pope") != null)
{
strSession = (String)session.getAttribute("pope");
}
else
{
response.sendRedirect("login.jsp");
} 最好能把东西打个包传上来,你这样说我也不知道怎么回事,如果要用到数据库导出个脚本出来一起打包或改成硬编码 if (session.getAttribute("pope") != null)
{
System.out.println("在这加个打印看看,或许我是空,而不是null哦!!");
strSession = (String)session.getAttribute("pope");
} 用session.close();试试
页:
[1]
2
