书接上回,后端将token返回给前端,前端存入cookie,每次前端给后端发送请求,后端是如何验证的。
若依是用过滤器来实现对请求的验证,过滤器的简单理解是每次发送请求的时候先发送给过滤器执行逻辑判断以及处理,以及在Controller层处理完成后退出时,过滤器再次介入。
- 注册过滤器,SecurityFilter 是Filter的一种特殊形式,内部也可以集成多个Filter。
- 下面的逻辑比较重要,例如在用户退出登陆时,执行的是
身份验证错误时,执行的是
决定哪些url不进行token验证,哪些必须验证
- 接着分析Token验证的Filter,通过比对token来验证用户身份,并且记录当前用户信息。这里并没有判断如果token错误抛异常,只要没设置
setAuthentication
框架层会进行检测,并报错。
- 注意,JWT会定期更新token值,也就是说如果我们一直在使用若依系统,系统监测到token快过期,会自动续期。