发送验证按,存redis

1、pom引入:

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-java-sdk-core</artifactId>
    <version>3.2.8</version>
</dependency>
<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
    <version>1.1.0</version>
</dependency>

2、controller:

/**
 * 发送验证码
 * @param phone
 * @return
 */
@RequestMapping(value = "sendSmsCode",method = RequestMethod.POST)
public ResponseEntity<?> sendSmsCode(String phone) {
    boolean flag = authService.sendSmsCode(phone);
    return ResponseEntity.ok(flag);
}

3、service:(SmsUtil工具类查看本人另一篇博客)

@Resource
RedisTemplate<String, Object> redisTemplate;

/**
* 发送验证码
*
* @param phone
* @return
*/
public Boolean sendSmsCode(String phone) {
    // 生成随机数(6位)
    Random random = new Random();
    int code = random.nextInt(999999);

    if ("success".equals(SmsUtil.sendSms(phone, String.valueOf(code)))) {
        redisTemplate.opsForValue().set(phone, String.valueOf(code), 300, TimeUnit.SECONDS);
        return true;
    } else {
        return false;
    }
}

猜你喜欢

转载自blog.csdn.net/wanglu0102/article/details/85234599