浏览器通过response设置缓存几种方法简解

来源:互联网 发布:自动写小说软件 编辑:程序博客网 时间:2024/05/16 04:32
public void ieExplorerCacheController(HttpServletRequest httpRequest, HttpServletResponse httpResponse){//不允许浏览器缓存信息**************************************************************//page cach close//Forces caches to obtain a new copy of the page from the origin server httpResponse.setHeader( "Cache-Control" , "no-store" ); //Directs caches not to store the page under any circumstance httpResponse.setDateHeader( "Expires" , 0); //Causes the proxy cache to see the page as "stale" httpResponse.setHeader( "Pragma" , "no-cache" );//*************************************************************}

Cache-Control: no-cache:这个很容易让人产生误解,使人误以为是响应不被缓存。实际上Cache-Control: no-cache是会被缓存的,只不过每次在向客户端(浏览器)提供响应数据时,缓存都要向服务器评估缓存响应的有效性。

Cache-Control: no-store:这个才是响应不被缓存的意思。

Pragma: no-cache:跟Cache-Control: no-cache相同,Pragma: no-cache兼容http 1.0 ,Cache-Control: no-cache是http 1.1提供的。因此,Pragma: no-cache可以应用到http 1.0 和http 1.1,而Cache-Control: no-cache只能应用于http 1.1.


0 0