首页 > 解决方案 > Netlify Identity / GoTrue-js 用户 JWT 是否过期?

问题描述

使用https://github.com/netlify/gotrue-js与 netlify 的身份验证服务(称为“身份”)进行交互,需要多久执行一次以下操作:

const user = auth.currentUser();
const jwt = user.jwt();
jwt
  .then(response => console.log("This is a JWT token", response))
  .catch(error => {
    console.log("Error fetching JWT token", error);
    throw error;
  });

生成的 JWT 会永远有效吗?在用户登录会话期间?还是在给定的时间后过期?

标签: javascriptjwtnetlify

解决方案


通常JWTs contains 可以(可选地)包含一个exp(过期)声明,其中包含它将过期的时间。

我没有经验GoTrue,但根据他们的文档,您可以配置expire,并将其设置为默认值 3600 秒。

由于该库也适用于刷新令牌,因此您不必在令牌过期后再次重新进行身份验证,而是使用刷新令牌来获取新的访问令牌。


推荐阅读