如何在不使用javascript的情况下禁用后退按钮浏览器我想使用servlet



当用户单击浏览器的后退按钮时,我的应用程序(使用JSP/servlet构建)出现问题。servlet应该如何编码,以便检测浏览器的后退按钮事件而不执行任何操作。我不允许使用Javascript。

显然,这些页面是从浏览器缓存中请求的。您需要禁用有问题页面的客户端缓存。您可以通过创建一个Filter来实现这一点,该Filter侦听要禁用缓存的页面的url模式,例如*.jsp。在doFilter()方法中执行以下操作:

HttpServletResponse httpres = (HttpServletResponse) response;
httpres.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
httpres.setHeader("Pragma", "no-cache"); // HTTP 1.0.
httpres.setDateHeader("Expires", 0); // Proxies.
chain.doFilter(request, response);
  1. Java代码将在服务器端执行
  2. Javascript在客户端上运行

无法在Java中禁用浏览器后退按钮,但您可以选择在发生此类事件时执行的操作。您可以选择显示同一页面。

最新更新