turbo.tools.短信验证码

流程

1、前台点击发送验证码,先校验手机号是否正确,简单检查,不能太死。点击发送成功以后,60秒倒计时,按钮不可用,手机号不能修改。
2、后台收到手机号,发送验证码,调用StringUtil.getRandomNumber(4)得到4位随机码。发送验证码。可能失败(多种原因)。

@Autowired
ITurboRedisService turboRedisService;


String rcode=StringUtil.getRandomNumber(4);
SMSSPAliyuncs sm = new SMSSPAliyuncs();
SMSSender sender = new SMSSender();
sender.setUsername("阿里云用户");
sender.setPassword("阿里云密码");
sender.setMt("");
sender.setSignature("阿里云签名");
String sms_param ="{code:'123456'}";                 
//测试注册
String ret = sm.templateSm("手机号", sms_param, "","","SMS_92100024", sender);
if(ret.equals("0")){
  turboRedisService.setex("手机号.domain.qq",60,rcode);

}else{
}

返回前端。
3、前台如果失败,提示原因,取消倒计时。成功后,继续。等待用户输入验证码。点击下一步,先验证验证码是否正确,正确,继续;错误,提示验证码错误,请重新输入验证码。
4、后台收到手机号和验证码,调用xxx,返回成功或者失败。

String rcode=  turboRedisService.get("手机号.domain.qq");

短信模块使用

1、依赖阿里云

dependency>
             com.bm.tools
             bm-utils
             0.0.3
         

            com.aliyun
            aliyun-java-sdk-core
            4.4.0
        
        
            com.aliyun
            aliyun-java-sdk-dysmsapi
            1.1.0
        

2、申请阿里云账号,设置模板,签名等

3、

//这些参数写到配置文件中
SMSSPAliyuncs sm = new SMSSPAliyuncs();
SMSSender sender = new SMSSender();
sender.setUsername("阿里云用户");
sender.setPassword("阿里云key");
sender.setMt("");
sender.setSignature("阿里云短信测试专用");
String sms_param ="{code:'123456'}";
             
         
//测试注册
String ret = sm.templateSm("13998250065", sms_param, "","","SMS_92100024", sender);

返回0,表示成功;其他是错误信息。

你可能感兴趣的:(turbo.tools.短信验证码)