我创建了一个web应用,应该始终使用最新文件并且不要缓存任何内容。但是当客户端离线时,它应该显示" offline.html"它不断尝试加载" index.php"每30秒。
这是事情:我的index.php也被缓存,因为它有manifest标签。但是这会弄乱我的webapp的功能。
所以我想问一下,使用缓存清单的最佳解决方案是什么,仅用于提供后备,而不是用于缓存任何其他内容?
的index.php
<html manifest="/cache.manifest">
cache.manifest
CACHE MANIFEST
FALLBACK:
/ /offline.html
NETWORK:
*
我在https://stackoverflow.com/a/19974768/1311566找到此解决方案,其中该人使用 iframe 加载带有清单标记的html,以便index.php没有缓存。但我想知道那里是否有其他甚至更好的解决方案。
非常感谢, 斯蒂芬
答案 0 :(得分:2)
https://stackoverflow.com/a/19974768/1311566中描述的解决方案是正确的。这是防止HTML文件被缓存的唯一方法,只有在请求失败时才会回退到/offline.html
。
我建立了基于applicationCache的离线兼容应用程序,已有3年多了,相信我这是唯一的方法。如果你想为iframe Hack提供一个很好的JS API(以及更多),你可以使用我构建的库:https://github.com/gr2m/appcache-nanny
顺便说一下,这个iframe黑客是由金融时报实验室团队发明的,他们整理了一个很棒的教程,里面有很多背景资料:http://labs.ft.com/category/tutorial/