javascript - 下次登录时如何清除我的客户缓存

标签 javascript caching webserver browser-cache

我有一个在 hostgator 上运行的应用程序。当我对 js 文件进行更改时,我的用户在清除缓存之前看不到更改。这是将更改推送到我的应用程序的唯一选项吗?基本上,我应该进行更改、更新文件,然后请求所有用户清除缓存?

最佳答案

您需要对包含的文件使用版本控制。任何时候您更改文件包含的 URI,浏览器都不会找到缓存匹配项并将重新下载包含。

例如:

<script type="text/javascript" src="include/232/init.js"></script>

其中 232 是您的可修改版本号,每当您发布新代码时都应更改该版本号。

或者,您可以使用查询字符串:

<script type="text/javascript" src="include/init.js?232"></script>

要点是,只要您希望访问者重新下载文件,就应该以某种方式更改文件包含 URI。

如果您使用 PHP 或其他服务器端语言,您可以将此版本控制设置为在您的文件包含被修改时自动发生:http://derek.io/blog/2009/auto-versioning-javascript-and-css-files/

关于javascript - 下次登录时如何清除我的客户缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14367541/

相关文章:

c - C/C++ 中的高性能应用程序网络服务器

python - Tornado 网络服务器无限子进程 fork

javascript - player.getCurrentTime()停止工作

javascript - 使用 JavaScript 在 <div> 中打印多个 <p> 标签

android - Robospice - 我们应该以什么顺序使用 execute()、addListenerIfPending()、getFromCache()

linux - 如何限制复制使用的缓存,以便仍有内存可用于其他缓存?

java - weblogic服务器发布失败

php - 创建一个不受页面刷新影响的计时器或警报

具有只读属性的 Javascript 对象

memory - 缓存行如何工作?