文章目录
前言
2024了,各种各样的门户网站和APP都需要登录,登录方式也各种各样,由于都要绑定用户手机号码,所以大部分都支持了手机验证码登录的方式,接下来我们使用redis来完成验证码的功能。
一、介绍
方法名 | 描述 |
---|---|
get | 获取验证码 |
match | 验证码配对 |
reset | 验证码重置 |
check | 手机号检测 |
sendVerificationCode | 发送验证码 |
二、代码
1.LoginController
@Controller
@RequestMapping("verificationCode")
public class LoginController {
@Autowired
private StringRedisTemplate stringRedisTemplate;
private int maxRetryCount=3;
private static final String COUNT="_COUNT";
private static final String CODE="_CODE";
private static final DefaultRedisScript<Boolean> RESET_SCRIPT;
static {
RESET_SCRIPT = new DefaultRedisScript<>();
RESET_SCRIPT.setLocation(new ClassPathResource("redis/reset.lua"));
RESET_SCRIPT.setResultType(Boolean.class);
}
@RequestMapping("get")
@ResponseBody
public boolean get(String phone){
Optional.of(phone);
if(check(phone)){