html - 清除浏览器历史记录后,使用 pouch db 存储到浏览器数据库中的数据将丢失

标签 html google-chrome indexeddb web-sql pouchdb

背景:

我的 HTML5 离线应用程序 将大量数据存储到本地浏览器数据库中。我使用 pouchdb3.3.1 与浏览器内数据库通信,以便在浏览器中存储数据。在正常情况下一切正常。我能够存储数据并在需要时将其取回。

问题:

当用户手动清除浏览器历史记录时,浏览器数据库中存储的所有数据将被清除。此问题发生在 IE11、Chrome36(这些是我机器中的浏览器)中。

有没有一种方法可以在清除浏览器历史记录时保留存储在浏览器数据库中的数据。

最佳答案

不,用户总是能够清除 IndexedDB/WebSQL/LocalStorage/AppCache 数据。在不同的浏览器中,它以不同的方式公开(例如,在 Firefox 中,它隐藏在高级 -> 网络 -> 离线 Web 内容和用户数据下),但功能始终存在。

一般来说,您不应该期望对用户决定清除浏览器数据的时间有任何控制,因此 PouchDB 的最佳策略是始终同步到远程数据库,这样用户的数据就不会丢失。

关于html - 清除浏览器历史记录后,使用 pouch db 存储到浏览器数据库中的数据将丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29759783/

相关文章:

html - 本地存储可以被认为是安全的吗?

javascript - JQuery 未初始化对象

javascript - 尝试通过选择具有相同 id 的元素来使用 JS 清除某些字段,perl hangup

html - 如何在移动 View 中切换品牌和菜单之间的搜索框?

css - 移动像素尺寸(使用 Chrome 模拟器)

javascript - Indexeddb 在同一索引上搜索多个值

jquery one() 在 chrome 中不能正常工作

reactjs - PWA only 绿地项目的优缺点?

dart - 从 Dart 中的 indexedDB 获取唯一对象

angularjs - IndexedDB回调不更新AngularJS中的UI