java - 如何在JSP中注销后禁用浏览器后退按钮?

标签 java jsp

Possible Duplicate:
Restrict user from accessing the previous page after signout

正在使用 netbeans 6.5.1 开发 JSP 应用程序。我需要在登录和注销后禁用浏览器后退按钮。怎么可能?

最佳答案

在 JSP 中您无法执行任何操作来直接影响浏览器的后退按钮。您的 JSP 标记/代码均在服务器端进行评估,作为生成设置给客户端的响应的一部分。

也就是说,您可以将以下 JavaScript 添加到注销后页面的 <head> 部分,以大致实现所需的效果:

<script>
    history.forward();
</script>

来源:http://answers.google.com/answers/threadview/id/574062.html

但是,更一般地说,您无法阻止坚定的用户在其历史记录中查找以前访问过的 URL 并在注销后将其浏览器指向该 URL。相反,您的 session 管理代码需要足够强大,才能知道如果用户不再持有有效 session ,它不应该为过时 URL 的请求提供服务。

或者,如果您真正想要做的是阻止浏览器在用户注销后显示登录后页面的缓存版本,您可以通过设置 HTTP Cache-Control 来实现(在大多数浏览器中)您的所有登录后页面上的 header 的值为 no-cache

关于java - 如何在JSP中注销后禁用浏览器后退按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5949801/

相关文章:

java - 使用泛型而不是可克隆的原型(prototype)模式

java - 如何让jininternalframe在大型机中居中?

java - 来自 JSP 的文本框值无法插入到数据库中

java - 如何纠正错误 "Undefined type: user.UserData"

java - 将 facesmessage 绑定(bind)到 xhtml 页面中的标签

java - 如何在java中检查图像中的匹配像素?

Java Calendar.DAY_OF_YEAR 有时差一个

java - 带 map 的本地应用程序

javascript - 使用 CSS 通过 <div> 限制鼠标点击

java - 是否可以将jsp响应缓存在浏览器中以防止jsp在下一个请求上执行?