我有一个web application,我认为它非常适合使用应用程序缓存,这是我玩的棋盘游戏的实用程序。
我在应用程序缓存中浏览了一个教程,它运行良好......有点太好了。
我的应用程序中的大多数脚本都是作为部署过程的一部分进行整合和最小化的,唯一的例外是jQuery。对于jQuery,我使用Google托管的副本。
当我在高速缓存之后第二次加载页面时,这会导致问题,因为jQuery没有被缓存,也不会加载它。
我做了改进,以便jQuery与其他最小化的脚本集成,但我仍然遇到了问题。我修改了清单,据我所知,Chrome下载了更新后的清单,但没有下载任何更新后的资源。
我甚至从HTML标记中删除了manifest属性,但它仍然不会刷新页面。我必须从清单中注释掉/index.html才能刷新页面。
因此,只要您仍在缓存相同的资源,似乎更新清单不会执行任何操作。有什么我想念的吗?如果缓存的项目早于特定日期,清单文件中是否有任何强制下载?
编辑添加:我正在Chrome上进行测试(稳定)。
答案 0 :(得分:0)
我设法通过在清单文件上显式设置缓存头来使其工作,以强制清除文件不被缓存。我把它添加到了我的.htaccess:
<Files ~ "\.mf">
ExpiresActive On
ExpiresDefault "access"
</Files>
请注意,我使用.mf作为我的文件扩展名...如果您使用的是.appcache,请将mf更改为appcache。