javascript+Struts2解决退出清空session以后,点击后退按钮显示原页面信息的问题

 
 
Javascript代码:
 
function outLogon() {
    location.replace("outLogon");  //outLogon即是你所要转的退出登录的Action地址

 

 
Action代码(Struts2):
 
 
 //清空session
 ActionContext.getContext().getSession().clear();
  //使HttpSession失效
  ServletActionContext.getRequest().getSession().invalidate();
 

 

 
这样处理之后,点击浏览器的后退按钮,则出现的页面将不会再显示关于session中的信息。
如果Javascript中不用 location.replace(),那么,当你点击后退的时候依然会显示退出前用户的信息,这样就不符合期望。
 
原因就在于:使用location.replace()该方法通过指定URL替换当前缓存在历史里(客户端)的项目,
因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL
posted @ 2014-09-22 23:59  风中xyz  阅读(753)  评论(0编辑  收藏  举报