未经授权使用 jwt 令牌

Posted

技术标签:

【中文标题】未经授权使用 jwt 令牌【英文标题】:Unauthorized using jwt tokens 【发布时间】:2018-06-05 08:56:48 【问题描述】:

我已经构建了 MEAN Web 应用程序。为了授权用户,我正在使用 JWT 令牌。但是有一个问题。有时在重新加载页面时我得到 401 Unauthorized 而我仍然被授权。我在语言环境存储中检查了两次我的令牌,它就在那里。然后我尝试重新加载我的其他页面,这太奇怪了,因为有些页面重新加载得很好,有些页面返回 401。我在 Heroku 上托管我的应用程序时遇到了这个错误。我将 angular 5 用于前端,将 Node js 用于后端。有没有人有这样的问题。如果您需要代码,请访问我的 github https://github.com/tia337/MEAN-Stack。

【问题讨论】:

为什么每个人都投反对票?你们都是编写完美代码或了解地球上一切的人吗?尝试对自己以外的人有用。你甚至不试图帮助。考虑一下 或者告诉我我的问题有什么问题。没有代码?全部在github上 不是您的反对者,我也不是您所询问的语言和领域的专家,但可以肯定的是,您的问题可以改进。您不应该有代码或 gitHub 的链接,因为所有相关代码应该与您的问题一起发布。请浏览help center 的“如何提问”部分,了解如何进一步改进此问题以及您未来的问题。 【参考方案1】:

我认为它的包装有问题。 tokenNotExpired 函数有一些问题。您也可以自行检查令牌是否过期。只需从 JWT 库中解码您的令牌并将过期时间与当前时间进行比较。 希望它会有所帮助。

【讨论】:

以上是关于未经授权使用 jwt 令牌的主要内容,如果未能解决你的问题,请参考以下文章

如果刷新(JWT)令牌未经授权(401响应),AngularJS重定向到登录

使用带有 RS256 加密的 express-jwt 在应用程序路由上解码 JWT 令牌会引发未经授权的错误

护照-jwt 总是返回“未经授权” - 401

在刷新身份验证令牌时处理多个未经授权的请求

Passport JWT - 未经授权

使用 jwt 在 springboot 中始终允许未经授权的请求