spring security+jwt 传另外参数

是这样的, 我想在登录的时候传一个type,type=1就是短信验证码登录,type=2
就是密码登录。框架的话是springboot security+jwt。本来是想着password当做密码或者验证码,依次来验证,但是我感觉这样怪怪的。。

不知道这应该如何做?
请各位大神告诉我下方法或者思路都可以,谢谢

杨魅力
浏览 603回答 1
1回答

互换的青春

说实话,我感觉你这个设计是不太好的,传的type是不必要的,短信登录和密码登录前端用不同的字段传给传给后端,比如密码登录用字段password,短信验证码登录用smsCode 之类的,到了后端就只用一套security 去验证,并生成新的token,就像这样: UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(mobile, password/SmsCode); Authentication authentication = authenticationManager.authenticate(token); 略.... 所以对于使用security jwt 去验证并不影响,而是后端要区分是密码登录还是验证码登录,如果是验证码登录,这一次登录成功后,那上一次的生成的验证码就应该失效,不能再用了。希望可以帮到你,多交流!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java