我有2个角度应用程序连接到同一个后端。
成功登录account.myweb.com后,用户将获得访问令牌和用户详细信息,并将重定向到app.myweb.com。 app.myweb.com需要此访问令牌。如何在2个应用程序之间共享数据?
答案 0 :(得分:0)
您可以使用$ cookies:https://docs.angularjs.org/api/ngCookies/service/ $ cookies
或者,我们使用results.results[0].markers[i]
。它运作良好。 https://github.com/grevory/angular-local-storage
答案 1 :(得分:0)
看来我们可以使用iframe和postmessage欺骗本地存储以允许跨域。 Theres角度模块为它。 https://github.com/ofirdagan/cross-domain-local-storage
答案 2 :(得分:0)
Cookie可以在子域之间共享。在您的情况下,您可以在2个应用之间共享相同的令牌。成功登录后存储令牌如下
$cookies.put('tokenName', 'tockenValue', { domain: '.myweb.com' });
然后您可以访问此令牌。
注意 - 如果您的应用使用低于1.3的角度版本运行,则无法将Cookie设置为特定域。因此你必须使用
$document[0].cookie = "tokenName"+ "=" + "tockenValue"+ ";domain=.myweb.com";