HTML5离线:即使在线,浏览器也会加载缓存的索引页面

时间:2011-02-13 19:54:49

标签: caching html5 manifest offline offline-mode

当请求页面时,它将根据清单文件进行缓存。但是,当页面更新,并且设备处于联机状态时,即使计算机处于脱机状态(在线),文件也不会更新。

我们如何解决这个问题?有没有办法告诉客户端从服务器加载页面,而不是在线时加载缓存?

2 个答案:

答案 0 :(得分:2)

在尝试上线之前,已缓存的离线应用将始终从缓存加载。

话虽如此,您可以创建一个动态缓存清单,如果有任何文件发生更改,它将自动更新,即使没有添加/删除文件也是如此。基本上,您创建每个文件的哈希值,如果哈希值更改,则更新清单。我将详细解释如何更详细地执行此操作here(最初发布的概念here)。

答案 1 :(得分:0)

请看这里:http://www.w3.org/TR/html5/offline.html#appcacheevents

显然,当页面声明清单时,浏览器应查看清单文件以查看是否有任何更改,然后刷新它提到的所有资源(如果有)。如果清单文件没有更改,则不会刷新任何其他内容。

我想你会改变清单文件中的注释,以便当资源名称的实际列表没有改变时,可能会发现它已经改变了 - 可能是版本号或日期注释。