Chrome 关闭标签 Vuejs 后删除本地存储
Posted
技术标签:
【中文标题】Chrome 关闭标签 Vuejs 后删除本地存储【英文标题】:Chrome deletes the localstorage after closing the tab Vuejs 【发布时间】:2022-01-03 16:14:13 【问题描述】:我正在使用 Vuejs 开发一个 Web 应用程序,并且我正在使用 localstorage 来存储 jwt 令牌,但是在我关闭选项卡后,我发现令牌丢失了,我需要重新登录。 我在 Opera GX 上测试了该应用程序,它运行良好,我只在 Google Chrome 中遇到了问题。
这就是我设置令牌的方式:
localStorage.setItem("token", token);
这就是我加载它的方式:
let token = localStorage.getItem("token");
【问题讨论】:
相关的 *** 问题 - ***.com/questions/13292744/… 相关的 Chrome 错误报告 - bugs.chromium.org/p/chromium/issues/detail?id=160056 如果那个token是机密的,不妨考虑一下XSS的风险——academind.com/tutorials/localstorage-vs-cookies-xss 谢谢@Corey 这个链接很有帮助 感谢@Anakin 提到 XSS 攻击 【参考方案1】:我认为问题出在 Chrome 上,
你需要先localstorage.getItem("X")
setItem("X","V")
setItem("X","V")
现在本地存储仍然存在,即使在关闭浏览器之后也是如此。
这个链接帮助了我:Why isn't localStorage persisting in Chrome?
【讨论】:
这是解决问题的唯一编辑吗?您提到的问题很老,我希望它不适用于现代 Chrome 版本。 该编辑为我解决了这个问题,我使用的是 Chrome 版本 96.0.4664.45以上是关于Chrome 关闭标签 Vuejs 后删除本地存储的主要内容,如果未能解决你的问题,请参考以下文章
H5本地存储sessionStorage和localStorage的区别