我i个人看的视频是黑马的springBoot,老师讲到登陆优化的时候,代码只是改了三处,分别是登录,拦截器,修改个人密码,
老师讲的有一点点模糊,因为老师没有说清楚,进行token 验证的时候,到底是怎么验证的,一开始,我理解的是
1:在个人登陆的时候,生成的令牌,会分为两份,一份给用户,一份存储到Redis中,让后在拦截器中进行比对,如果一样就通过,反之就不通过,后来看老师代码,又感觉不是那回事
正确的流程应该是:
!!!
1.在登陆的时候生成的token令牌,一份给用户,一份给Redis备份
2.登陆后,可以进行一些操作,但是当进行到修改用户密码的时候,将Redis中的token令牌进行删除,
3,根据黑马老师给出的代码中他是在拦截器中进行了对Redis进行了处理
这里面对Redis中存放的token进行了判断,即是否为空,如果为空,就说明用户刚刚修改了密码,其中所存储的Redis已经被清空,故而这里会强制用户退出,毕竟拦截器这里异常导致用户无法进行任何用户操作,只能退出重新登录,就像是很多网站一样,如果你修改了密码,那么会自动跳转到用户登陆页面
今天无意点开,突然发现有点错误就是,额,好吧我再想想,就是jwt应该是那种就是先跟拦截器中的jwt进行比对然后正确的话就可以跳转后端所有接口,然后就是如果发生了更改密码,就将redis中的令牌进行清除,拦截其中进行判断,即:如果为空则表示改了密码,抛出异常页面跳转到登陆页面