删除浏览器缓存cookie

今天来找bug 发布于 2016/02/04 10:06
阅读 619
收藏 0
本人是个初学者,在使用shiro 做logout 时遇到一些问题,想请教一下各位大虾,我用subject.logout() 做登出处理,代码如下:
Subject subject = SecurityUtils.getSubject();  
System.out.println(subject.isAuthenticated()); //true  
subject.logout(); //        
System.out.println(subject.isAuthenticated()); //false

登出之后subject.isAuthenticated() 是false,根据shiro 官方说法,在这之后session 就已经删除了,然后重定向到另一个网页过程就结束了。

我遇到的问题是登出之后在地址栏输入登录后的地址还是能够访问进去,可以进入到页面中,但是不能进行业务操作,刷新一下就退出到 login 页面了。我之前以为 subject.logout 之后没有删除session,后来验证了,验证结果如下,在正常 subject.login() 后浏览器会产生2个cookie,一个是JSESSIONID,一个是rememberMe(这个是shiro的机制),当我 subject.logout() 后这2个cookie 就已经被浏览器删除掉了,可见浏览器上的cookie是没有了的,那,当我在地址栏键入登录后的网址,那个页面是从哪里读取的呢?好晕啊

页面上我写了这些:

<meta http-equiv="Pragma" content="no-cache"> 
<meta http-equiv="Cache-Control" content="no-cache,must-revalidate"> 
<meta http-equiv="Expires" content="0">
这些事能保证页面上删除缓存的

加载中
返回顶部
顶部