我在我的网络服务器上托管一个单一的 HTML 网页(所有设计元素都包含在 .html 文件本身中),我想让它在我的用户离线时可用。它应该是这样工作的:当用户在线时,他访问我的网页,Chrome 将 .html 文件保存在本地;当用户离线并尝试访问我的网页时,Chrome 正在使用本地 .html 文件。即使在离线模式下,JavaScript 也必须在网页上运行。用户在访问我的页面时绝不能看到您离线错误消息,并且我页面的保存副本不得从浏览器缓存中过期至少 2 周。一切都必须自动为用户工作,无需更改 Chrome 设置,也无需安装 Chrome 扩展程序。这可能吗?
包含的 JavaScript 足够智能,可以使用 window.localStorage
保存数据,并在用户再次在线时立即将其与服务器同步。
最佳答案
我自己从未这样做过,但您可以使用缓存 API(service-worker API 的一部分)来存储 URL 可寻址资源(如 html 文件)。
您可以设置 HTTP header ,使其在 2 周或更长时间后过期。但是,如果有人清除了他们的缓存(例如有时删除了他们的浏览器历史记录),它就会消失。
https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/offline-for-pwa
这是指南---> https://davidwalsh.name/cache
关于javascript - 如何使我的单一 HTML 网页在 Chrome 中离线可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45795994/