1

我有一个使用应用程序缓存进行离线和在线访问的 Web 应用程序。我遇到的问题是当我更改清单文件时,我的一些用户没有看到更新。它适用于我和其他人,所以我唯一的理论是某些 ISP 正在缓存清单文件。

有人遇到过这种情况么?

我不知道以编程方式刷新浏览器应用程序缓存以强制更新的任何方法。window.applicationCache.update() 似乎没有奏效(至少在 iPad 上)。向 URL 添加查询的常用技巧可能会破坏离线行为。

无奈之下,我可以简单地使用一个不变的加载器页面并将所有代码放在 localStorage 中并自己进行更新。

4

1 回答 1

0

根据 HTML5 Boilerplate,通常的做法是立即使清单文件过期:

ExpiresByType text/cache-manifest       "access plus 0 seconds"

众所周知,如果清单文件未明确过期,则 Firefox 会出现缓存清单文件的问题。上面链接的 HTML5 Boilerplate 文件也为其他文件类型提供了大量合理的默认值。

于 2011-10-16T10:25:12.717 回答