javascript包含的内容将被缓存多长时间?

javascript包含的内容将被缓存多长时间?,javascript,caching,Javascript,Caching,我正在使用 <script src="http://example.com/file.js" type="text/javascript"></script> 浏览器将缓存此脚本多长时间? 有一个 <meta http-equiv="Content-Cache" content="no-cache" /> 在我的HTML中。那会有什么不同吗 浏览器将缓存此脚本多长时间 这取决于服务器的设置。使用Fiddler或Charles等工具查看标题。这取决于

我正在使用

<script src="http://example.com/file.js" type="text/javascript"></script>

浏览器将缓存此脚本多长时间? 有一个

<meta http-equiv="Content-Cache" content="no-cache" />

在我的HTML中。那会有什么不同吗

浏览器将缓存此脚本多长时间


这取决于服务器的设置。使用Fiddler或Charles等工具查看标题。

这取决于浏览器。meta标记对脚本没有影响,只对页面本身有影响。您必须修改服务器设置以发送JavaScript的无缓存标头:


另外,在推出新版本时,防止浏览器缓存JavaScript的最佳方法是对脚本进行版本设置。不确定您是否正在使用某种自动构建,但如果是这样,设置版本化的JavaScript/CSS非常容易。

特别是过期,缓存控制、Pragma、上次修改和ETag可能会影响caching.thx。我得到:缓存控制:无缓存Pragma:no Cache Expires:Thu,1970年1月1日00:00:00 GMT。这是否意味着它不会在当前会话之外被缓存?这应该确保它永远不会被缓存…但是,我不确定是否所有浏览器都会正确地尊重头。众所周知,一些浏览器(IE)会做一些非常奇怪的事情。这就是为什么我建议在JavaScript上使用版本号。由于每次更改文件内容时都会更改文件名,因此任何浏览器都无法返回过期版本。具体而言,在Fiddler中,请参阅缓存响应检查器。IE不关心“内容缓存”元标记,我想其他浏览器也不会,因为这不是一个基于标准的指令。有关浏览器缓存如何工作的入门知识,请参见。