即使在提供缓存参数后,JSP页面也会缓存

时间:2015-03-03 08:54:56

标签: java spring jsp caching

项目在Spring框架上运行,处理请求的Handler类扩展了MultiActionController。

我添加了以下代码以在Response Header中设置Cache-Control参数。

httpServletResponse.addHeader("Cache-Control", "no-cache, no-store, must- revalidate,max-age=0,private,pre-check=0,post-check=0"); 
httpServletResponse.addHeader("Pragma", "no-cache"); 
httpServletResponse.addDateHeader("Expires", -1); 

甚至,在JSP页面中,我还包括以下几行:

<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Cache-Control" content="max-age=0" />
<meta http-equiv="Cache-Control" content="must-revalidate" />
<meta http-equiv="Cache-Control" content="private" />
<meta http-equiv="Cache-Control" content="pre-check=0" />
<meta http-equiv="Cache-Control" content="post-check=0" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />

当我使用Firebug在fire fox上调试页面时,响应头显示如下:

enter image description here

和缓存标签如下:

enter image description here

这种情况只发生在一个页面上,剩下的页面没有被缓存。这是什么原因?请帮我解决。

1 个答案:

答案 0 :(得分:0)

看看https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching_FAQ。这是重要的部分:

  

mozilla缓存保存用户通过HTTP下载的所有文档。   起初这可能看起来很奇怪;然而,这是为了访问   可用于后退/前进,保存,查看源等的文档   无需额外的服务器之旅。同样如此   改进了缓存内容的离线浏览。