gpt4 book ai didi

java - 防止IE缓存

转载 作者:太空狗 更新时间:2023-10-29 22:38:04 26 4
gpt4 key购买 nike

我正在使用 Struts 开发 Java EE 网络应用程序。问题出在 Internet Explorer 缓存上。如果用户注销,他可以访问某些页面,因为它们被缓存并且没有发出请求。如果我点击刷新它工作正常。此外,如果用户再次进入登录页面,它也不会重定向他,因为该页面也被缓存了。

我想到了两个解决方案:

  1. 编写拦截器(类似 servlet 过滤器)以添加到响应 header 、无缓存等。
  2. 或或放<meta>每个页面上的标签。

我应该做哪一个?

最佳答案

而是在相关页面的 HttpServletResponse 上设置以下 header ,这样您就不需要手动将其复制粘贴到所有页面上:

response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0); // Proxies.

这相当于在页面中手动设置以下元 header :

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="0">

另见 this answer .不要忘记在测试前清除浏览器缓存 ;)

关于java - 防止IE缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2848945/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com