使用 Auth0 刷新令牌时,Angular-NestJs 页面上出现错误 401

问题描述 投票:0回答:1

我使用 Auth0 作为身份验证系统创建了一个以 Angular 作为前端、NestJs 作为后端的应用程序。

在 Angular 中,我放置了身份验证按钮,并且它可以正常工作。当用户进行身份验证时,会正确发出对 /token 的请求,并且该值用于将其添加到向 NestJS API 发出请求的标头中。它工作正常,但是,当向 /token 发出新请求时(例如刷新页面时),通过标头发送令牌时,我收到来自 NestJS 的 401 错误。

不得不说NestJS使用Passport JWT作为身份验证策略。

我无法确定为什么它对后续请求不起作用(但对第一个请求起作用)。我是不是错过了什么?

angular jwt nestjs passport.js auth0
1个回答
0
投票

我不确定为什么在正确形成“Authorization”标头并将其发送到 API 服务器的情况下会收到“401 Unauthorized”。

但一般来说,我认为您不应该如此频繁地请求新令牌(例如每次重新加载页面),而只能在当前令牌过期或早一点时请求。

因此,一旦您在任何端点上出现 401 错误(可能除了设置中的

GET /token
等),就是请求新令牌的正确时机。在某些情况下,基于编码到令牌中的
iat (issued at)
属性之类的内容,可能会更快一些。您可以在这里查看您的内容 https://jwt.io.

© www.soinside.com 2019 - 2024. All rights reserved.