在做web开发时,特别是现在ajax系统,需要写大量的javascript脚本。而我们也需要刷新页面去看或者调式是不是我们写的这段javascript正确。我们经常遇到的情况是刷新之后。发现javascript根本不是我们期望的结构,在浏览器中output我们javascript file,然后我们发现根本没有更新javascript file。 javascript文件本浏览器cache了。我经常做的就是使用firefox的web develop toolbar去disable cache。 在开发环境可能还不会造成太大的麻烦,如果是在生产环境的话,客户可能会急着打电话责问你,为什么我们新版系统还没有上线?
为了让浏览器以为我们每次都去请求一个不同的资源。我们可以在资源后面append一个unique值比如:
[code]
myImage.jpg?nocache=" + new Date().getTime();[/code]
这样在开发环境下还可以,如果到生产环境下就有点吃不消了。最合理的是在修改那个资源文件之后我们手动的去修改下nocache参数的值,但是如果很多页面都require这个值的话,我们手动去修改也是相当麻烦的。
[code]
myImage.jpg?nocache= <%=revison%>"[/code]
我们可以把revison保存在数据库中,每次我们改动js之后,顺便把revison也更新下就行了。
参考:http://blog.neo-archaic.net/2006/08/02/nocache-for-javascript-and-flash.htm
为了让浏览器以为我们每次都去请求一个不同的资源。我们可以在资源后面append一个unique值比如:
[code]
myImage.jpg?nocache=" + new Date().getTime();[/code]
这样在开发环境下还可以,如果到生产环境下就有点吃不消了。最合理的是在修改那个资源文件之后我们手动的去修改下nocache参数的值,但是如果很多页面都require这个值的话,我们手动去修改也是相当麻烦的。
[code]
myImage.jpg?nocache= <%=revison%>"[/code]
我们可以把revison保存在数据库中,每次我们改动js之后,顺便把revison也更新下就行了。
参考:http://blog.neo-archaic.net/2006/08/02/nocache-for-javascript-and-flash.htm
本文探讨了解决JavaScript文件被浏览器缓存导致的问题。通过在文件请求URL后添加一个唯一标识符来强制浏览器重新加载最新版本的文件。文章还讨论了一种更优方案,即维护一个修订号,并在文件修改时更新此修订号。

被折叠的 条评论
为什么被折叠?



