我有一个单页动态web应用程序。我创建了清单文件,并在html标记中添加了引用。我现在面临的问题是,只有在chrome中,即使有新的内容,页面内的内容也会保持旧的。在firefox上,当我加载网站时,新内容会显示出来,但在chrome中,它会显示旧内容。
我的清单文件
CACHE MANIFEST
# 2014-02-19:v0.11
CACHE:
/assets/kik_icon_256.png
/assets/touch-icon-iphone-precomposed.png
/assets/touch-icon-ipad-precomposed.png
/assets/touch-icon-iphone-retina-precomposed.png
/assets/touch-icon-ipad-retina-precomposed.png
/css/style.css
/css/modal.css
/helper/localization.js
/js/jquery.js
/js/base.js
NETWORK:
*
索引.php
<html manifest='manifest.appcache'>
这是清单文件和appcache的明确用途。它的行为符合预期。一旦URL在appcache中,浏览器将只提供来自appcache的URL。它不会与网络对话,除非寻找新版本的清单。
如果您想使用新内容,您需要更改清单本身的内容,通常是在顶部碰撞版本字符串#2014-02-19:v0.11
,然后重新请求页面。这将触发在下次下载时重新下载整个清单文件。
旧内容仍然将在找到新清单的请求中提供,但在后台,新清单和新资源将下载,下一个请求将显示更新的内容。你可以在控制台上观看这种情况的发生;Chrome将显示相当多的关于清单下载状态的调试信息。
如果你想避开这个过程,你可以手动检查并从chrome中删除appcache数据,方法是:chrome://appcache-internals/.