两种方式 让客户端 缓存失效

  asp.net  发布的时候经常遇到 js ,css  或者 图片什么的没有更新,这是好多程序员都要 按ctrl+F5 强制刷新一下,但是chrome 浏览器 有时候 要7-8次才算正常。 对应新手来说,可能不知道什么原因了,根据亲身经历 ,提供2中方式来解决发布新版本程序和升级的问题。

 

1  在每个文件后面加版本号,最经常看到 如 jquery(jquery-1.4.4.min.js) 因为加了版本号,浏览器请求服务器上原先的文件, 这是已经找不到了,那么必须重新下载新的文件。这时就达到了缓存失效的目的。 但是有人提出疑惑,一个工程浩大,不可能每升级一次 都要把所有的文件 都加一遍版本号,不太现实,于是第二个方法就出来了。

 

2  在URL后面添加一个版本号,让原先的URL失效。 当然是从代码实现,形如

<%= Htmlrewrite.css("/css/css.css")%>
<%= Htmlrewrite.jsl("/js/js.js")%>

 目标是

<link type="text/css" rel="Stylesheet" href="/css/css.css?_t=6456456456053453" />
<script type="text/javascript" src="/js/js.js?_t=645645645345364"></script>

 

无论哪种方式  都是为了 让浏览器 从服务器上重新下载 。

posted @ 2013-03-01 15:56  非著名架构师  阅读(545)  评论(0编辑  收藏  举报