fix(config): 解决MySQL连接和短信验证码缓存问题

- 在开发环境数据库连接URL中添加allowPublicKeyRetrieval参数
- 在生产环境数据库连接URL中添加allowPublicKeyRetrieval参数
- 将短信验证码验证从RedisTemplate切换到Redisson客户端
- 注释掉验证码删除逻辑以避免影响后续验证流程
This commit is contained in:
wangzhiwei 2026-01-28 17:14:06 +08:00
parent 83fc577186
commit 3b83ddc2cf
3 changed files with 4 additions and 4 deletions

View File

@ -687,12 +687,12 @@ public class SysUserServiceImpl implements SysUserService {
Assert.notBlank(code, "验证码不能为空");
// 验证验证码
String cachedCode = redisTemplate.opsForValue().get("sms_code:" + phone);
String cachedCode = (String) redissonClient.getBucket("sms_code:" + phone).get();
Assert.notNull(cachedCode, "验证码已过期");
Assert.equals(cachedCode, code, "验证码错误");
// 验证成功后删除验证码
redisTemplate.delete("sms_code:" + phone);
//redissonClient.getBucket("sms_code:" + phone).delete();
// 查询用户是否存在
SysUser sysUser = sysUserMapper.getByTel(phone);

View File

@ -8,7 +8,7 @@ spring:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: 123456
url: jdbc:mysql://127.0.0.1:3306/agent_skills?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&autoReconnect=true&maxReconnects=10&failOverReadOnly=false
url: jdbc:mysql://127.0.0.1:3306/agent_skills?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&autoReconnect=true&maxReconnects=10&failOverReadOnly=false&allowPublicKeyRetrieval=true
hikari:
pool-name: DevHikariPool
maximum-pool-size: 12

View File

@ -8,7 +8,7 @@ spring:
driver-class-name: com.mysql.cj.jdbc.Driver
username: agent_skills
password: agent_skills@xueai666
url: jdbc:mysql://43.248.97.19:12306/agent_skills?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&autoReconnect=true&maxReconnects=10&failOverReadOnly=false
url: jdbc:mysql://43.248.97.19:12306/agent_skills?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&autoReconnect=true&maxReconnects=10&failOverReadOnly=false&allowPublicKeyRetrieval=true
hikari:
pool-name: ProdHikariPool
maximum-pool-size: 30