使用JWT生成token后为token设置一个过期时间(假设为30分钟)并且存在redis中,等到30分钟之后token会过期。但是如果我一直在浏览网站,那么30分钟之后token就不应该过期(过期之后就需要重新登录,这样逻辑很奇怪)。请问一下这样该怎么设计呢?
使用JWT生成token后为token设置一个过期时间(假设为30分钟)并且存在redis中,等到30分钟之后token会过期。但是如果我一直在浏览网站,那么30分钟之后token就不应该过期(过期之后就需要重新登录,这样逻辑很奇怪)。请问一下这样该怎么设计呢?
使用JWT生成token后为token设置一个过期时间(假设为30分钟)并且存在redis中
JWT自带信息,服务器端只做验签不做存储,所以你可能说的就是普通的token,这种情况每次请求更新一下过期时间即可
无感刷新 token
思路:设置刷新时间和过期时间。比如刷新时间设置为2天,过期时间设置为2周;token 颁发2天内,请求接口时 token 有效、不刷新;token 颁发2天至2周内,请求接口时,token 有效,但达到了刷新时间,刷新重新颁发 token,把老的 token 加入黑名单,避免一刷多的问题。token 颁发2周后,请求接口时,token 失效,直接拦截请求。
4 回答1.2k 阅读✓ 已解决
4 回答1.2k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
2 回答708 阅读✓ 已解决
2 回答1.7k 阅读
2 回答1.6k 阅读
2 回答1.3k 阅读
我的看法: