JWT应用中token应该在什么时候进行更新
参考若依的写法,提供一个思路:
token的更新时机是在验证token时,当令牌仍然有效,并且过期时间距离当前时间小于一个固定值(源码中是MILLIS_MINUTE_TEN 10分钟)时,进行刷新。
/**
* 验证令牌有效期,相差不足120分钟,自动刷新缓存
*
* @param loginUser
*/
public void verifyToken(LoginUser loginUser)
{
long expireTime = loginUser.getExpireTime();
long currentTime = System.currentTimeMillis();
if (expireTime - currentTime <= MILLIS_MINUTE_TEN)
{
refreshToken(loginUser);
}
}
参考文件位置
ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java