SpringSecurity如何编写示例代码实现短信验证码功能?
- 内容介绍
- 相关推荐
本文共计2763个文字,预计阅读时间需要12分钟。
一、思考+1、设计思路+在获取短信验证码功能和图形验证码功能非常相似的地方,因此在设计获取短信验证码时,将之前开发良好的图形验证码进行一步整合、抽象与重构。
一、思考
1、设计思路
在获取短信验证码功能和图形验证码还是有很多相似的地方,所以这里在设计获取短信验证的时候,将之前开发好的的图形验证码进一步整合、抽象与重构。
在获取验证码的时候,它们最大的不同在于: 图形验证码是通过接口返回获取給前端。而短信验证码而言是通过第三方API向我们手机推送。
但是它们在登陆的时候就有很大的不同了,对于图形验证码而言验证通过之前就走UsernamePasswordAuthenticationFilter 过滤器了开始校验用户名密码了。
但对于短信登陆而言,确实也需要先现在短信验证码是否通过,但是一旦通过他是不走 UsernamePasswordAuthenticationFilter,而是通过其它方式查询用户信息来校验
认证已经通过了。
这篇博客只写获取获取短信验证码的功能,不写通过短信验证码登陆的逻辑。
2、重构设计
这里才是最重要的,如何去设计和整合短信验证码和图形验证码的代码,是我们最应该思考的。如何将相似部分抽离出来,然后去实现不相同的部分。
整理后发现不同点主要在于
1、获取验证码。因为对于图形验证码需要有个画布,而短信验证码并不需要,所以它们可以实现同一个接口,来完成不同的逻辑。
2、发送验证码。
本文共计2763个文字,预计阅读时间需要12分钟。
一、思考+1、设计思路+在获取短信验证码功能和图形验证码功能非常相似的地方,因此在设计获取短信验证码时,将之前开发良好的图形验证码进行一步整合、抽象与重构。
一、思考
1、设计思路
在获取短信验证码功能和图形验证码还是有很多相似的地方,所以这里在设计获取短信验证的时候,将之前开发好的的图形验证码进一步整合、抽象与重构。
在获取验证码的时候,它们最大的不同在于: 图形验证码是通过接口返回获取給前端。而短信验证码而言是通过第三方API向我们手机推送。
但是它们在登陆的时候就有很大的不同了,对于图形验证码而言验证通过之前就走UsernamePasswordAuthenticationFilter 过滤器了开始校验用户名密码了。
但对于短信登陆而言,确实也需要先现在短信验证码是否通过,但是一旦通过他是不走 UsernamePasswordAuthenticationFilter,而是通过其它方式查询用户信息来校验
认证已经通过了。
这篇博客只写获取获取短信验证码的功能,不写通过短信验证码登陆的逻辑。
2、重构设计
这里才是最重要的,如何去设计和整合短信验证码和图形验证码的代码,是我们最应该思考的。如何将相似部分抽离出来,然后去实现不相同的部分。
整理后发现不同点主要在于
1、获取验证码。因为对于图形验证码需要有个画布,而短信验证码并不需要,所以它们可以实现同一个接口,来完成不同的逻辑。
2、发送验证码。

