如何在节点 js 上创建 JWT 刷新令牌?

How can I create JWT refresh token on node js?

我正在使用简单的 JWT auth firebase。后端检查它是否是有效用户并使用 JWT 返回访问令牌。现在我想实现一个刷新令牌。我该怎么做?刷新令牌的内容应该是什么?当我签署一个新的访问令牌并转到受保护的页面时,但当它刷新时,它会再次转到登录页面。 我还应该怎么做才能签署刷新令牌?请任何人帮助我。

当您生成 JWT 身份验证令牌时,根据您的要求生成具有 1 天或没有到期时间的刷新令牌。在此之后,在登录 API 的响应中发送 JWT 和 JWT-REFRESH 令牌,然后在您的后端创建一个 API,它接受来自 header 或 [=23] 的刷新令牌=] 并作为响应生成 JWT 令牌,以防刷新令牌出现错误 return 401 状态代码。

在客户端,如果您使用的是 axios,则可以使用 axios-interceptors 作为中间检测 401 是否来自任何 API,然后在这种情况下点击刷新 JWT 令牌 API 生成新的授权令牌。

如果刷新令牌 API 再次给出 401 响应,则将其处理为刷新令牌也已过期并将用户重定向到登录页面。