【问题标题】:JWT Tokens errorJWT 令牌错误
【发布时间】:2018-03-16 20:33:19
【问题描述】:

我在这个应用程序中使用 Node.JS express 后端和 Angular 4 前端。我使用 JWT 令牌来存储用于查找用户的 id。请注意,这些 JWT 令牌不会过期。

场景:

  1. 用户登录。
  2. JWT Token 已生成并签名(包含用户 ID)
  3. JWT 令牌保存在 localStorage 中
  4. 从那时起使用 JWT 令牌来查找当前登录的用户

这是完美的工作。现在,发生了一件非常奇怪的事情。在生产中,有时 JWT 令牌似乎会更改值,这会在我的应用程序上引发错误,因为无法再找到用户。我已经浏览了所有代码,应用程序本身的任何内容都不应该改变值。

我似乎已将此问题隔离为仅主要发生在 Google Chrome 中,但是(我认为)我有时可能已经看到它发生在 Safari 中。我不知道为什么会这样。当我转到 Angular 中的受保护页面时,它会在继续之前检查 JWT 令牌是否存在。如果没有,那么它将去登录。该令牌的值没有任何变化。

有谁知道我可能做错了什么/为什么会这样?

【问题讨论】:

    标签: node.js angular express jwt


    【解决方案1】:

    您是否使用middleware 函数来实现您的 JWT 逻辑?

    如果没有,我建议使用中间件函数,该函数在路由逻辑/处理函数之前编写。我想,这有助于调试问题,也是一个很好的做法。

    【讨论】:

    • 我确实编写了一个中间件函数来实现我的逻辑 - 它没有向我显示任何问题。 JWT 令牌似乎在到达我的中间件之前已更改。
    猜你喜欢
    • 2016-09-24
    • 2022-07-08
    • 1970-01-01
    • 2019-07-18
    • 2021-10-20
    • 2018-12-10
    • 2020-03-26
    • 2020-07-02
    • 1970-01-01
    相关资源
    最近更新 更多