【发布时间】:2017-12-04 03:18:11
【问题描述】:
我有一个 Angular 4 应用程序,并且正在使用 Auth0 进行登录和注册。当您单击登录时,它会将您带到 Auth0 自己的页面,您可以在其中输入您的凭据。 Auth0 检查它们,然后将您发送回您选择的回调 url,并在 url 中包含 jwt。然后我将令牌存储在 localStorage 中。
Auth0 建议您在注销时只需删除 localStorage 中的令牌和到期日期:
public logout(): void {
// Remove tokens and expiry time from localStorage
localStorage.removeItem('access_token');
localStorage.removeItem('id_token');
localStorage.removeItem('expires_at');
// Go back to the home route
this.router.navigate(['/signup']);
}
这很好用,但是当我再次尝试登录时,我并没有被带到 Auth0 的登录页面,而是自动返回带有令牌的回调 url。这不是我想要的,因为这意味着我并没有真正退出。解决它的唯一方法是删除 Chrome 中的“Cookie 和其他站点数据”,但据我所知,没有 cookie(除了谷歌分析)。
谁能解释这里发生了什么以及如何在上面的注销功能中解决它。
【问题讨论】:
标签: angular authentication cookies auth0