local-storage - 每个多个用户的 IndexedDb

标签 local-storage indexeddb

我有一个关于 IndexedDb 最佳实践的问题,即如何管理不同用户的数据。

场景:我有一个包含系统数据的 mysql 数据库。当用户登录系统时,我将他的数据从 mysql 同步到 IndexedDb,然后 Web 应用程序使用直接存储在 indexeddb 中的数据。当用户下次登录系统时,不需要完全同步,因为他的数据已经存储在本地。

问题是当用户注销,然后在同一台计算机上另一个用户登录到系统时,因为 IndexedDb 包含以前用户的数据。

是否有管理此类场景的最佳实践?因为现在我看到 2 个选项:

  • 在注销和登录操作中始终清除 indexeddb 数据。缺点是在那种情况下,每次用户登录系统时我都需要执行完全同步。
  • 摆脱 IndexedDb,因为它不应该用于该场景并直接从 mysql 获取数据。
  • ?? <- 请也许您知道如何避免每次用户登录时完全同步,并确保其他用户的数据不被读取。

  • 谢谢,

    最佳答案

    我采用的做法是不要在同一台机器上存储多个帐户。这是一种安全风险,可能允许某人查看他们无权查看的帐户中的数据。相反,当我检测到用户注销然后另一个用户重新登录时,我会在保存新用户的数据之前删除当前缓存的数据。如果一个人退出并且同一用户重新登录,我永远不会删除他们的数据。只有当用户更改时它才会被删除。

    关于local-storage - 每个多个用户的 IndexedDb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27067267/

    相关文章:

    javascript - 与智能手机上的离线缓存和 JS 内存结合使用时的 HTML5 LocalStorage 限制

    Java - 在磁盘上存储文件的实用程序?

    cordova - android和ios哪个版本的webview支持indexeddb?

    google-chrome-extension - IndexedDB、unlimitedStorage 和访问在后台/选项脚本的内容脚本中创建的数据库

    javascript - 移动 HTML5 应用程序本地存储

    连接 IndexedDB 和 WebSQL 的 JavaScript 库

    database - 用于我的 ionic 项目的最佳数据库

    javascript - 添加 localstorage 链接作为图像 src

    Android 4.0.1 打破了 WebView HTML 5 本地存储?

    javascript - IndexedDb 是否依赖于 cookie?