怎么实现用户退出功能,退出后按浏览器后退按钮,返回的是用户登录界面
我登录功能是用strut1+spring做的,
<table>
<tr><td>用户名</td><td><html:text name="vmtaForm" property="perEmail" value="请输入注册邮 style="color:#999999" onclick="if(value==defaultValue){value='';}" onblur="if(!value){value=defaultValue;}"/>
</td></tr>
<tr><td>密码</td><td><input id="txt" type="text" value="请输入密码" style="color:#999999"/>
<html:password name="vmtaForm" property="pwd" style="display:none;color:#CCC;"/>
</td></tr>
<tr><td><html:submit value="提交"/></td><td></td></tr>
</table>
用户名和密码都是直接用form属性传递的,很容易就实现登录功能了,现在我想实现,用户退出功能,但退出后按浏览器回退又会到原来的界面,我在验证用户名和密码的action里
response.setHeader("Cache-Control","no-cache");
response.setHeader("Pragma","no-cache");
response.setDateHeader ("Expires", 0);
加了个这个,回退提示页面已经过期,但是刷新页面又会回到登录成功的界面,有没有方法可以实现退出后再按浏览器回退键都是返回登录画面的
------解决方案--------------------点浏览器上的回退,到原来的画面是正常的,
可你要是用session判断,
就算退到原来的页面,画面应该不能操作了吧,
一操作就可以根据有无session存在来迁移到登录画面。
------解决方案--------------------看下我的博客中关于session注销的问题就解决了,可以增加一个按钮,作为退出按钮,点击时触发一个事件,在事件里把session注销,这样再返回时就重定向到登录界面了,那篇博客中有具体代码,这里就不贴代码了
------解决方案--------------------你采用浏览器的后退按钮是会调取缓存数据。你设置了没有缓存那就是过期。
你试试这个思路:
页面上放一个JS,来判断是否处于登录状态,如果不是登录状态的话,将页面转向到登录页面。
------解决方案--------------------点击注销,进入action清空Session,跳转到login.jsp
Clear.Session();
------解决方案--------------------浏览器的后退退回到原来的页面是正常的,如果你不想要原来的页面,可用ajax实现提交,还有在每个提交的action都判断一下当前session是否失效,来决定跳转与否
------解决方案--------------------解决了吗?
------解决方案--------------------登录成功后的页面,可以判断session是否有效,无效就返回login.jsp
点击注销 就在action里面 session.invalidate();
然后跳转jsp页面
------解决方案--------------------不是的,只有自己存进session,才会在存在session中的
------解决方案--------------------session.clear();
------解决方案--------------------我感觉,你也可以,点击推出后直接进入登录界面,后者推出后关闭浏览器
------解决方案--------------------注销session
然后做一个过滤器 当session为空的情况下自动跳转登录页面
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------session清楚直接跳转到EXIT页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<html>