每个多个用户的 IndexedDb

2024-04-07

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

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

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

是否有管理这种情况的最佳实践?因为现在我看到有两个选择:

  1. 在注销和登录操作中始终清除indexeddb数据。缺点是在这种情况下每次用户登录系统时我都需要执行完全同步。
  2. 摆脱 IndexedDb,因为它不应该用于该场景并直接从 mysql 获取数据。
  3. ??

Thanks,


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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

每个多个用户的 IndexedDb 的相关文章

  • Javascript 在选中的复选框上克隆此 div,在未选中的情况下删除此 div

    选中该复选框后 克隆正确的 div 并将其显示在示例中 div div 当取消选中该复选框时 删除克隆 并伴随localStorage 有人可以帮我解决这个问题吗 function onClickAvGamesCheckBox var ar
  • navigator.webkitPersistentStorage.requestQuota 是否适用于 IndexedDB?

    使用今天最新版本的 Android Chrome 我可以使用以下命令请求持久性 IndexedDB 存储吗 navigator webkitPersistentStorage requestQuota var requestedBytes
  • 如何存储和更新具有不同数据类型属性的 localStorage 键对象?

    这是我第一次使用localStorage我想存储一个localStoragekey 是一个具有不同数据类型属性的对象 例如 key localstor 它是一个包含两个属性的对象 localstor userMsg String userI
  • json.stringify 不处理对象方法

    我正在尝试开发一个可以在大多数现代浏览器 Chrome Firefox IE 9 Safari Opera 中运行的离线 HTML5 应用程序 由于 Safari 尚不支持 IndexedDB 并且已弃用 WebSQL 因此我决定使用 lo
  • 删除indexedDB对象存储中特定索引值的所有记录

    对于数组键为的对象存储 a b where a也是一个索引 有没有更有效的方法来删除特定值的所有记录a而不是在索引上打开游标a并通过光标逐步删除每条记录 有没有办法只为索引定义键范围 或者只为索引定义键范围a然后离开b打开任何值 以便可以删
  • HTML LocalStorage 中的数据在其他窗口/选项卡中可用所需的时间

    我有一个使用 HTML LocalStorage 的网页 同时打开此页面的多个选项卡 窗口是很常见的 由于这些都使用相同的 LocalStorage 并且 LocalStorage 不提供事务或类似功能 因此我想实现某种形式的互斥 以防止不
  • 如何删除indexedDB?

    我正在从事一个涉及使用 IndexedDB 的项目 当我开始了解这项技术时 我需要能够手动删除索引数据库 以便我可以重新开始 我在 Firefox 中找到了方法 但在 Google Chrome 中找不到方法 我尝试删除该文件夹的内容 我使
  • 将图像加载到 localStorage 并将图像 src 设置到该位置

    我已成功允许用户将图像上传到本地存储 但我希望能够获取该图像并用它填充页面上的图像元素 h3 Please upload the image you wish to use h3
  • 仅在第一次使用 localStorage 加载网站时显示 DIV

    我正在尝试完成这项工作 但我遇到了一些问题 就像标题所说 我希望仅在第一次加载网站时显示 DIV 我知道如何使用 PHP 和 Cookie 但我想要使用 localStorage 函数 这是我的代码 div div document rea
  • 是否可以在 Windows 应用商店应用程序中的用户之间共享数据?

    我很确定我知道这个问题的答案 非常大的否 但是是否可以在相同的应用程序但是 Windows 运行时环境中有多个用户 Windows 登录 而不是 Microsoft Store 用户 本地数据文件夹是相对于每个登录用户而言的 所以乍一看这似
  • IndexedDB - 对象存储与多个数据库与索引?

    我想知道什么时候使用单个数据库与具有多个对象存储的数据库是一个好主意 我阅读了网络上的大多数教程并查看了 indexedDB 的规范 但找不到比较这些不同概念的好例子 有没有人有此类事情的具体示例 使用多个对象存储和 或代码的设计模型 只要
  • 从本地存储中删除数组项

    我在本地存储中存储了一个数组 将其解析为 json 我将它放回到一个对象中 从中删除了一些项目 我需要使用本地存储中的新值更新密钥 var counter 0 1 2 var count counter 0 var questions lo
  • Cypress:我想通过登录一次在 100 个规范文件中运行测试,并为每个文件持续登录。是否可以?

    我有近 100 个规格文件 包括多个测试 我想通过登录一次来运行所有这些规格文件 我不希望我的 cypress 每次在每个规范文件上都登录进程 可以为所有规范文件保留单一登录 看看我们的 登录 食谱https github com cypr
  • 如何保护Web应用程序免受cookie窃取攻击?

    我的网络应用程序的身份验证机制目前非常简单 当用户登录时 网站会发回一个存储的会话 cookie 使用localStorage 在用户的浏览器上 但是 此 cookie 很容易被窃取并用于从另一台计算机重播会话 我注意到其他网站 例如 Gm
  • 如何在角度通用中使用localStorage?

    我正在使用 angular v4 0 3 和 webpack 2 2 0 使用它工作得很好Auler http ium com evertonrobertoauler angular 4 universal app with angular
  • 如何在react中监听localstorage值的变化?

    我想在用户登录时显示一个按钮 如果用户未登录 那么我不会显示按钮 当用户登录时 我将设置本地存储值 当我在登录组件中设置本地存储时 标头组件必须侦听该事件并且显示按钮 我正在使用 addEventListener 进行监听 但它没有监听 我
  • Chrome 浏览器的存储限制

    软限制是多少 用户需要授予超过该限制的权限 硬限制是多少 允许的最大值 2020 年 5 月更新 Chrome 现在允许源使用 60 的存储设备空间 真正的细节 存储设备 是包含 chrome 配置文件目录的分区 更新的文章在这里https
  • 我将如何将 localStorage 与 Object 一起使用

    请有人能说清楚为什么我需要这样做JSON stringify localStorage setItem data 然后使用JSON parse localStorage getItem data 在我可以取回我的数据对象之前 简而言之 因为
  • 刷新页面时保存用户的选择

    我目前有一个页面显示不同团队的数据 我有一些数据 用户可以单击使其处于 打开 或 关闭 状态 并为每个数据显示不同的图标 它基本上就像一个清单 只是没有物理复选框 我想记住哪些 复选框 已被选中 即使在用户刷新页面或关闭浏览器并稍后返回之后
  • localStorage 获取 NULL?

    我不知道为什么 因为我之前已经这样做过并且工作正常 我认为这可能是因为浏览器问题 错误 localStorage setItem foo bar alert localStorage getItem foo 我使用的是 Firefox 3

随机推荐