这次的项目中使用Ajax请求数据,发现经常需要关闭浏览器才能更新页面数据,在head meta中设置了no-cache问题还是得不到解决,Google了下终于找到了问题所在。即使使用meta的no-cahce浏览器在缓存超过32K之后还是会去缓存页面。使用JSP+html双管齐下的方法把问题解决了。
HTML代码
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
<META HTTP-EQUIV="expires" CONTENT="0">
JSP代码
response.addHeader("Cache-Control", "no-cache");
response.addHeader("Expires", "Thu, 01 Jan 1970 00:00:01 GMT");
另外,在
http://wf66.com/page/20068/1451512F59.htm上说浏览器是自上向下读取页面的,所以需要在body之后再设置一个
<META HTTP-EQUIV="pragma" CONTENT="no-cache"> 就能解决问题,像这样:
不过本人一直希望遵循标准,这样的写法不太符合W3C标准。<html> <head></head> <body></body> <head> <META HTTP-EQUIV="pragma" CONTENT="no-cache"> </head> </html>