在springboot中使用的是jjwt做的token,但是我想添加一个刷新token的机制,就是过期后,只要没有超过允许的范围内,可以再次生成一个新的token已达到刷新token的目的。
但是在生成新的token时,我需要在旧的token中解析出一些用户信息,用来生成新的token。但是在解析的时候总是抛出过期异常,有没有什么方法可以设置jjwt解析的时候,不做过期的校验
public static String getRefreshToken(String token) throws ParseException {
// 刷新token值
Claims body = Jwts.parser()
//设置签名的秘钥
.setSigningKey(TOKENKEY)
.parseClaimsJws(token)
.getBody(); // 从旧的token中解析出用户信息用于新token的生成
return "";
}
有没有什么方法可以让 Jwts.parser() 在解析时不要再做过期校验了。否则总是抛出异常,没法获取用户信息
你可以在老的
jwt
失效的前一段时间,生成新的jwt
就可以了。后端返回新的响应头
new-jwt
,前端检测有该响应头,用该新值来替换本地老的jwt
之后再做请求就是新的
jwt
啦