【问题标题】:Sharing Localstorage token amongst multiple javascript apps on same domain but different subdomains在同一域但不同子域的多个 javascript 应用程序之间共享 Localstorage 令牌
【发布时间】:2019-03-11 14:33:18
【问题描述】:

我正在尝试在托管在同一域但不同子域上的不同应用程序之间实现单点登录

这是托管在 mydomain.com 上的主应用程序,我想与托管在 app1.mydomain.com 和 app2.mydomain.com 上的应用程序共享令牌

现在默认情况下,我通常通过以下方式在本地存储中设置我的令牌

       window.localStorage.setItem("access-token", value);

并通过

检索它
       window.localStorage.getItem("access-token");

但是现在在主域上托管但在子域上的应用程序无法访问相同的本地存储值

我如何克服这个问题以及除了 localstorage 是否有更好的方法来存储 jwt 令牌

【问题讨论】:

    标签: javascript local-storage


    【解决方案1】:

    这是浏览器存储安全问题,浏览器不允许。 LocalStorage 不能跨子域共享。这些属于Same Origin Policy。

    您可以使用IFrame 技巧来做到这一点。更多详情请查看链接here

    编辑 - 1

    还有另一种方法来存储access-token,您可以使用cookies 或session 存储。这些跨子域工作。建议使用cookie 或session 管理令牌等。

    【讨论】:

      猜你喜欢
      • 2021-06-21
      • 1970-01-01
      • 2017-05-27
      • 1970-01-01
      • 2016-06-20
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多