如何防止javascript缓存?Querystring方法不起作用

mar*_*lar 1 javascript caching

我已经看到其他方法将版本号或MD5哈希附加到JS src查询字符串.

e.g. <script src='/script/v1/'></script>
Run Code Online (Sandbox Code Playgroud)

但是,当我推送新版本的网站时,我的JavaScript 仍会在多个浏览器(Chrome,Firefox)中缓存.

这似乎是其他人已经解决的一个主要问题,我似乎正在做正确的事情.我怎样才能让它发挥作用?

mar*_*lar 7

我添加了日志消息,并确定查询字符串方法正在运行.抱歉这个不必要的问题.

但是,在研究中,我发现了一些值得一提的重点:

  1. 其中一篇文章建议使用查询字符串并附加当前时间.您可能不希望遵循此建议,因为您的文件永远不会被缓存.使用源代码控制版本号或MD5哈希会更好.
  2. Steve Souders(高性能网站成名)指出,某些Web代理从不使用查询字符串缓存任何内容.因此,版本号应嵌入到文件的路径中,以确保在通过这些代理访问时适当地缓存文件.(http://www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/)