我有一个Web应用程序,它使用应用程序缓存进行离线和在线访问。我遇到的问题是,当我更改清单文件时,我的一些用户没有看到更新。它适用于我和其他人,所以我唯一的理论是一些ISP正在缓存清单文件。
还有其他人遇到过这个吗?
我不知道以编程方式刷新浏览器应用程序缓存以强制更新的任何方法。 window.applicationCache.update()似乎没有做到这一点(至少在iPad上)。将查询添加到URL的常见技巧可能会破坏脱机行为。
在绝望中,我可以简单地使用一个不变的加载页面,并将所有代码放在localStorage中并进行自己的更新。
答案 0 :(得分:0)
通常的做法是立即使清单文件到期,as per HTML5 Boilerplate:
ExpiresByType text/cache-manifest "access plus 0 seconds"
众所周知,如果未明确过期,则会出现缓存清单文件的问题。链接到上面的HTML5 Boilerplate文件也有其他文件类型的合理默认值。