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

Angular - sharing session between the tabs of the same browser

我正在寻找一种无需再次身份验证即可在浏览器选项卡之间共享同一会话的方法。正如 here.

所指出的,有一种方法可以结合使用会话存储和本地存储来做到这一点 这里的问题是,每当您恢复选项卡时,Chrome 和 Firefox 浏览器的会话存储也会恢复。这对我的用例来说是一个非常糟糕的做法。

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

是否可以用 cookie 解决这个问题?欢迎任何适当的解决方案或解决方法。

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

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

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

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