Angular - 在同一浏览器的选项卡之间共享会话

时间:2021-02-03 15:20:03

标签: angular cookies session-storage

我正在寻找一种无需其他身份验证即可在浏览器选项卡之间共享相同会话的方法。正如here所指出的那样,有一种方法可以通过会话存储和本地存储的组合来做到这一点。

这里的问题是,无论何时恢复选项卡,Chrome 和 Firefox 浏览器的会话存储也将恢复。对于我的用例来说,这是一个非常糟糕的做法。

例如,浏览器因某种原因关闭,然后另一个用户开始使用同一台机器。我不希望其他用户只需恢复选项卡就可以访问前一个用户的会话。

有没有可能用 cookie 来解决这个问题?欢迎任何适当的解决方案或解决方法。

1 个答案:

答案 0 :(得分:2)

正如 Alex 在评论中指出的那样,最好为此用例实施某种形式的身份验证。

如果您希望不同的用户使用一台机器并且不希望他们的会话重叠,那么这几乎是您唯一的解决方案。

正如您自己所说,sessionStorage 仅限于给定的选项卡,而下一个最高选项是 localStorage(即使关闭浏览器,该选项仍然存在)。也许您可以尝试侦听浏览器关闭事件或在给定时间后删除 localStorage 条目,但这也不太可靠。

至于 cookie,您会看到与 localStorage 相同的情况。