当你想改变用户的数据时,你应该删除 jwt 并为会话创建一个新的吗?

When you want to change User's data, should you delete the jwt and create a new one for the session?

我在 React 和 Node 中实现,更新用户数据。

  1. 在数据库中进行更改后,您是否应该删除该令牌并生成一个新令牌?
  2. 正在更新 Redux 中的值?

我们一般不会在一个 JWT 令牌中存储超过 5 个字段的数据。因此,例如,您将这些字段存储在令牌中:

username
role

在您修改数据库中的这些字段之前,令牌一直有效。

但是,如果您修改了这些字段:

  1. 您需要将新生成的令牌传递给您的 React 应用程序。这可确保用户保持登录状态。

  2. 或者,只需将用户重定向到登录页面即可轻松修复。

此外,您不应将令牌保留超过要求的时间,即在令牌上设置到期日期。