无操作X小时自动登出功能

前因背景:前几天写完了登陆后本来以为高枕无忧,结果线上环境出现了一系列问题,以及产品提出了无操作两小时要自动登出功能,而不是不论是否操作都两小时登出

先说遇到的问题(其实是不细心导致):
error:点击忘记密码时报错
解决办法:拦截适配器忘记添加无需拦截的url(忘记密码的url)
error:点击获取验证码报错
解决办法:拦截适配器忘记添加无需拦截的url(获取验证码的url)

再说新需求:用户无操作两小时登出,有操作要延长时间
修改代码:
直接在登陆拦截器中添加一行:

redisTemplate.expire(redisTokenKey, 2, TimeUnit.HOURS);

注意:这行的位置是在判断完前端传入的token 不等于null且和redis中的token一样的条件后

即,每次传过来的请求,在经过一系列token判断后再将过期时间延长两小时

如果此篇有疑惑请看:
springboot +redis+token 实现登陆、登出
springboot如何优雅写登陆拦截器

你可能感兴趣的:(登陆,拦截器,springboot,redis,数据库,java)