使localStorage和/或IndexedDB数据脱机永久?
是否可以使localStorage和/或IndexedDB脱机数据永久化?
我打算制作一个完全离线的HTML5应用程序,并希望数据永远不会被删除,除非用户明知不这样做。
即使应用关闭,系统关闭,我也不希望删除数据。
答案 0 :(得分:1)
...希望数据永远不会被删除,除非用户 故意这样做。
Storage API允许请求" persistent"你的出身许可。如果被授予,则语义是存储在某些API(本地存储,索引数据库,缓存等)中的数据被保留,直到明确的用户操作(如清除存储),这似乎符合您的需求。
文档: https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/persist
请注意,这是一个新的网络平台API。它最近被添加到Firefox(57)和Chrome(55),但在Edge或Safari中不存在。另请注意,Chrome目前不会显示此权限请求的提示;它使用关于Web应用程序的启发式方法来确定是否应该授予请求,而不是要求用户做出决定。
规范位于:https://storage.spec.whatwg.org
该规范提供了存储在浏览器中如何工作的背景知识,即默认情况下,原始数据是"尽力而为",意味着保留直到浏览器需要清除它(由于空间约束等)。浏览器的实际行为差异很大。