Mar*_*rau 7 javascript caching http browser-cache requirejs
我们当前的部署使用归属构建缓存清除方法:我们的映射文件包含我们的javascript文件的哈希值(此映射是在应用程序启动时创建的).然后,在我们的模板中使用此文件中的值来生成脚本标记,该标记包含用于缓存清除的GET参数,即<script src="/static/js/somefile?v=adg34d>
我目前正在将整个页面转换为使用RequireJS,我想摆脱这些缓存破坏参数,因为它们很难实现.我们的HTTP服务器配置添加正确Last-Modified
和ETag
头所服务的每个资产资源.如果我查看Chrome Web控制台,我可以看到浏览器也使用它并获得正确的信息304
.虽然我相信Chrome能够做到这一点,但当然还有其他浏览器.
问题是:如果我只使用Last-Modified
和ETag
标头可以依赖浏览器来正确或我真的需要缓存破坏参数?
我只需要支持:
是的,您可以依赖浏览器,但等待响应可能需要很长时间304
。谷歌以更有效的方式做到这一点。缓存清除参数的每个值v
代表文件的特定版本。如果您不更改该值,浏览器将跳过版本验证并继续使用Cache-Control
或指示的本地缓存Expires
。
因此,这是性能和便利性之间的决定。
CASE 2. 如果您的文件不存在,而是动态创建的(即将一些脚本文件实时合并在一起),您也需要该参数。
归档时间: |
|
查看次数: |
1389 次 |
最近记录: |