来源:
http://www.blogjava.net/jht/archive/2008/09/27/231429.html
1. response.setHeader("Cache-Control","no-cache");
This is used to prevent the browser from caching your dynamic content generated by a JSP or Servlet.
You set this attribute in the HTTP header of the response object which would tell the browser not to cache this content. So everytime you request the page again, the browser would make a new request, instead of showing you a cached page.
2.使用服务器端控制AJAX页面缓存:
response.setHeader( "Pragma", "no-cache" );
response.addHeader( "Cache-Control", "must-revalidate" );
response.addHeader( "Cache-Control", "no-cache" );
response.addHeader( "Cache-Control", "no-store" );
response.setDateHeader("Expires", 0);
单纯的使用 xmlhttp.setRequestHeader("Cache-Control","no-cache")无效。
3.Cache-Control头域
Cache-Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置Cache-Control并不会修改另一个消息处理过程中的缓存处理过程。请求时的缓存指令包括no-cache、no-store、max-age、max-stale、min-fresh、only-if-cached,响应消息中的指令包括public、private、no-cache、no-store、no-transform、must-revalidate、proxy-revalidate、max-age。各个消息中的指令含义如下:
Public指示响应可被任何缓存区缓存。
Private指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息,此响应消息对于其他用户的请求无效。
no-cache指示请求或响应消息不能缓存
no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。
max-age指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。
min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。
max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值,那么客户机可以接收超出超时期指定值之内的响应消息。
Read more:
http://www.jiehoo.com/browser-cache-problem.htm (作者: Cherami 原载: 浏览器缓存)
再论怎么有效利用浏览器缓存之怎么避免浏览器缓存静态文件
HTTP协议header头域- PetitPrince - 博客园
分享到:
相关推荐
文件下载response.setHeader()下载中文文件名乱码问题解决办法 本文主要讨论了文件下载时response.setHeader()下载中文文件名乱码问题的解决办法。该问题是由于 HTTP 消息头中的 Content-Disposition 头字段不正确...
**response.setHeader("Cache-Control", "no-cache")** **response.setHeader( "Pragma", "no-cache" ); response.addHeader( "Cache-Control", "must-revalidate" ); response.addHeader( "Cache-Control", "no...
response.setHeader("Cache-Control", "on-cache"); response.setDateHeader("Expires", 0); //获取流对象向客户端写入图片 ServletOutputStream sos = response.getOutputStream();………………………………...
response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); // 将认证码存入SESSION session.setAttribute("rand",image.sRand); // 输出图象到页面 ImageIO.write(image....
response.setHeader(Cache-Control,no-cache); response.setDateHeader(Expires, 0); %> 2, 使用HTML标记,如下面: <HEAD> <META HTTP-EQUIV=Pragma CONTENT=no-cache> <META ...
response.setHeader("Cache-Control","no-cache"); response.setHeader("Pragma","no-cache"); (3)并不是所有的浏览器都能完全支持上面的3个响应头,因此最好是同时使用上面的3个响应头。 2、Filter的理解和应用 ...
response.setHeader(“Cache-Control”,”no-cache”); response.setHeader(“Pragma”,”no-cache”); 不是所有的浏览器都能完全支持上面的三个响应头,因此最好是同时使用上面的三个响应头,只要浏览器能支持...
response.setHeader(Cache-Control,no-cache); response.setDateHeader(Expires, 0); response.flushBuffer();%> 在html页里: <meta http-equiv=Content-Type content=text/html; charset=gb2312> <META...
response.setHeader("Cache-Control", "no-cache"); PrintWriter out = response.getWriter(); System.out.println(getFileFileName() + " filename"); if (flag) {//此处必须添加,否则会...
response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); int i_width=60; int i_height=20; BufferedImage image = new BufferedImage(i_width,i_height,BufferedImage.TYPE...
response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.setContentType("image/jpg"); /** * jgp格式验证码 宽,高,位数。 */ BaseCaptcha captcha = new SpecCaptcha...
为了防止jsp或servlet中的输出被浏览器缓存,可以在jsp文件的开始处加入以下脚本:<% response.setHeader("Cache-Control","no-store"); response.setHeader("Pragma","no-cache"); response.setDateHeader (...
AJAX缓存问题的三种解决方法(IE) 做一个项目用到Ajax,开始觉得挺好,后来发现一个问题,例如删除一项,恢复之后就不能再接着...3.服务器端代码加入response.setHeader("Cache-Control", "no-cache, must-revalidate");
4-2 当表单提交信息中包括汉字时,在获取时应该做怎样的处理? 使用request.setCharacterEncoding(“gb2312”) ...<%response.setHeader("Cache-Control","no-store"); response.setDateHeader("Expires",0);%>
response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); // 在内存中创建图象,设置图片的显示大小 int width=60, height=20; BufferedImage image = new BufferedImage(width, ...
response.setHeader("Cache-Control", "No-cache"); response.setHeader("Expires", "0"); int width = 80; int height = 18; BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_...
response.setHeader(“Cache-Control”,”no-cache”); response.setDateHeader(“Expires”, 0); %> 2, 使用HTML标记,如下面: <HEAD> <META HTTP-EQUIV=”Pragma” CONTENT=”no-cache”>...
ajax调用的返回数据会被缓存,调用静态html ,即使把html修改了,IE依有可能然用原来的数据显示。 而firefox可以正常显示新的数据。... response.setHeader(“Cache-Control”,”no-cache”); respon
user_ini.cache_ttl = 300 ;;;;;;;;;;;;;;;;;;;; ; Language Options ; ;;;;;;;;;;;;;;;;;;;; ; Enable the PHP scripting language engine under Apache. ; http://php.net/engine engine = On ; This directive...
response.setHeader("Cache-Control", "No-cache"); response.setDateHeader("Expires", 0); // 指定生成的响应是图片 response.setContentType("image/jpeg"); int width = 200; int height = 60; ...