策略描述
用户登录后颁发 access_token(有效期限3天) 和 refresh_toekn(有效期限7天),3天内携带 access_token 访问接口,3天以后七天以内 access_token 过期,携带 refresh_toekn 放入请求头中请求刷新 access_token
策略实现
用户登录成功,生成 access_token(无限期) 和 refresh_toekn(无限期)放入 redis 中,分别设置在 redis 中的时长3天和7天。
1).access_token未过期: 每次访问携带access_token访问api时如果未过期,则允许访问,并且重新设置access_token在redis的时长(3天)
2).access_token过期,refresh_token未过期:访问api发现access_token过期,则调用刷新access_token的api,用refresh_token获取新的access_token。
生成新的access_token,refresh_token放入redis中,键值不变。
3)access_token过期,refresh_token过期:返回json信息:授权过期,重新登录
后台登出
在 redis 中把 access_token 和 refresh_token 给清除。
更换密码
在 redis 中把 access_token 和 refresh_token 给清除。