springboot验证码-AJ-captcha
准备资料:
若依版本 : ruoyi-vue 3.8.2 【点我去下载】
aj-captcha版本:1.3.0 【去下源码】
参考:若依官方文档-集成aj-captcha
若依vue版本的验证码用了数学运算,还得手工输入计算结果。看了官方文档,改成了目前比较流行的拖动滑块方式。
1.引入MAVEN依赖若依官方引入的是1.2.7版本。我选择了目前最常用的1.3.0版本。
在项目中给的 ruoyi-frameworkpom.xml 添加依赖
1
2
3
4
5
|
<dependency> <groupid>com.anji-plus</groupid> <artifactid>spring-boot-starter-captcha</artifactid> <version> 1.3 . 0 </version> </dependency> |
在ruoyi-admin模块中的application.yml中添加aj-captcha配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
# 滑块验证码 aj: captcha: # 缓存类型 cache-type: redis # blockPuzzle 滑块 clickWord 文字点选 default 默认两者都实例化 type: blockPuzzle # 右下角显示字 water-mark: ruoyi.vip # 校验滑动拼图允许误差偏移量(默认 5 像素) slip-offset: 5 # aes加密坐标开启或者禁用( true | false ) aes-status: true # 滑动干扰项( 0 / 1 / 2 ) interference-options: 2 |
这只是基础配置,可以参考aj-captcha详细配置选择自己想用的参数。
3.添加实现类指向设置在ruoyi-adminsrcmainresourcesMETA-INFservices下创建com.anji.captcha.service.CaptchaCacheService文件同时设置文件内容为:
1
|
com.ruoyi.framework.web.service.CaptchaRedisService |
在 ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java 文件中configure方法下的httpSecurity添加如下语句:
1
|
.antMatchers( "/captcha/get" , "/captcha/check" ).anonymous() |
若依官方文档让修改 ruoyi-admincomruoyiwebcontrollersystemSysLoginController.java,如果使用的是我提到的若依版本,不用修改,官方的文档参考的若依版本可能比较低吧。。
大家在修改代码时,切记不要按照文档官方文档直接覆盖,建议使用文本比较工具将代码进行比对后只更新相关内容,这也是开发人员的良好习惯!!!!
修改ruoyi-frameworkcomruoyiframeworkwebserviceSysLoginService.java