利用版本号来清空客户端文件缓存

1.用ajax来get或者post数据时,由于浏览器的缓存原因,导致获取的数据不是实时的,解决方案为:

我们可以用时间戳做成一个get变量,这样就不会有浏览器的缓存了

2.当html页面中的引用的js和css修改后,你会发现部分浏览器请求js和css文件得到的status竟然是304(可以通过Firebug等工具看到),说明读的还是浏览器缓存中老的文件。解决此问题的方法还是给文件的加上版本号

在js和css链接后面加上参数 例如:a.js?2001,b.css?2001,这里面的“2001“就是版本号

有时候我们的html是动态页面生成的,这时候可以在aspx里,动态给js和css文件添加版本号(common.js?<%=Timer%>或者common.js?<%=FileMd5String%>),版本号可以是以下两者之一

  • js文件的最后更新时间,精确到分钟(一般来说精确到分钟就可以了)
  • 文件的md5值(强烈推荐
这样就可以做到,只有在文件(js或者css)修改后,生成静态页面的时候才会更改该文件的版本号,既做到了自动化,又可以准确的控制版本问题,保证浏览器当前下载的就是最新的js或者css文件


你可能感兴趣的:(html,Ajax,timer,css,浏览器,Firebug)