我想知道浏览器如何确定何时从服务器获取脚本与从缓存中获取脚本......
开发时,我无需清除缓存即可查看更改。但是,有些人经常遇到浏览器缓存脚本的问题,而不是获取更新的版本。我知道您可以将查询字符串附加到文件路径以强制它从服务器获取,但在这个问题中,我更感兴趣的是了解问题背后的机制。为什么缓存有时只会干扰,为什么它对每个人的影响都不一样?
另外,这可能因浏览器而异?IE、火狐、Chrome 等...
谢谢
我想知道浏览器如何确定何时从服务器获取脚本与从缓存中获取脚本......
开发时,我无需清除缓存即可查看更改。但是,有些人经常遇到浏览器缓存脚本的问题,而不是获取更新的版本。我知道您可以将查询字符串附加到文件路径以强制它从服务器获取,但在这个问题中,我更感兴趣的是了解问题背后的机制。为什么缓存有时只会干扰,为什么它对每个人的影响都不一样?
另外,这可能因浏览器而异?IE、火狐、Chrome 等...
谢谢
就像其他人所说的那样,这是一个相当广泛的问题,我相信这真的取决于浏览器。通常,您的浏览器会缓存图像、css 和 js 文件等内容,以减少再次访问该站点时的页面加载时间。
如果您担心您的观众能够查看您的新内容或功能,一种“简单”的方法是对您的 js 和 css 文件进行版本控制。这可以通过执行以下操作来完成:
脚本类型="text/javascript" src="someplace/main.js?ver=1.5" >
注意 ? 在 js 扩展之后。这只是告诉浏览器有更多数据需要处理。如果它无法识别字符串,它将尝试再次下载文件,从而更新您的客户端缓存。