Mah*_*esh 1 java jsp servlets java-ee
我有30个jsp页面登录和注销.我已将所有页面放在Session中,以便只有有效的用户才能访问.现在的问题是,每当用户点击注销时,会话就会失效,但如果用户按下浏览器的后退按钮,它仍会显示安全页面(不应显示).
我知道问题在于浏览器保存缓存和历史记录.所以我response.setheader("cache-control",.....)在安全页面上以及在安全页面中应用了等等window.history.go(+1).
它在某种程度上工作正常,但偶尔会显示安全页面.而且,一旦用户登录会话开始并且他将进入网站,后退按钮应该没有任何麻烦(没有提示用户重新发送表单数据).一旦他退出会话应该结束,他不应该通过按回按钮来访问页面.有没有办法实现这个目标?
1为了检查用户是否经过身份验证,请不要在jsp上使用代码,我们Filter只能使用它.
2让您Filter执行以下操作以解决缓存问题
HttpServletResponse hsr = (HttpServletResponse) response;
hsr.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
hsr.setHeader("Pragma", "no-cache"); // HTTP 1.0.
hsr.setDateHeader("Expires", 0); // Proxies.
chain.doFilter(request, response);
Run Code Online (Sandbox Code Playgroud)
3删除javascript
| 归档时间: |
|
| 查看次数: |
1295 次 |
| 最近记录: |