使用leanCloud发送短信验证码Java

主要使用的是 leanCloud 的验证类短信 官方文档
1.在 pom.xml 中添加相关依赖

<!--leancloud 的sms短信服务-->
 <dependency>
     <groupId>cn.leancloud</groupId>
     <artifactId>realtime-core</artifactId>
     <version>6.4.0</version>
 </dependency>
 <!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp -->
 <dependency>
     <groupId>com.squareup.okhttp3</groupId>
     <artifactId>okhttp</artifactId>
     <version>4.4.1</version>
 </dependency>

2.leanCloud工具类

package cn.duli.xianer.utils;

import cn.leancloud.core.AVOSCloud;
import cn.leancloud.sms.AVSMS;
import cn.leancloud.sms.AVSMSOption;
import cn.leancloud.types.AVNull;
import io.reactivex.Observer;
import io.reactivex.disposables.Disposable;

public class SmsUtil {

    /**
     * leanCloud调用接口发送验证短信
     * @param phone
     * @return
     */
    public static Integer postMsg(String phone) {
        AVOSCloud.initialize("填自己的appId", "填直接的appKey");
        AVSMSOption option = new AVSMSOption();
        option.setTtl(10);
        option.setApplicationName("测试短信");
        option.setOperation("短信验证");
        AVSMS.requestSMSCodeInBackground(phone, option).subscribe(new Observer<AVNull>() {
            @Override
            public void onSubscribe(Disposable disposable) {
            }
            @Override
            public void onNext(AVNull avNull) {
                System.out.println("Result: Successfully sent verification code.");
            }
            @Override
            public void onError(Throwable throwable) {
                System.out.println("Result: Failed to send verification code. Reason: " + throwable.getMessage());
            }
            @Override
            public void onComplete() {

            }
        });
        return 1;
    }

    /**
     * 调用接口验证用户输入的验证码是否有效
     * @param code
     * @param phone
     * @return
     */
    public static Integer verifyMsg(String code, String phone) {
        AVOSCloud.initialize("填自己的appId", "填直接的appKey");
        AVSMS.verifySMSCodeInBackground(code,phone).subscribe(new Observer<AVNull>() {
            @Override
            public void onSubscribe(Disposable d) {
            }
            @Override
            public void onNext(AVNull avNull) {
                System.out.println("Result: Successfully verified the number.");
            }
            @Override
            public void onError(Throwable throwable) {
                System.out.println("Result: Failed to verify the number. Reason: " + throwable.getMessage());
            }
            @Override
            public void onComplete() {
            }
        });
        return 1;
    }

}

3.controller 部分

    /**
     * 发送短信验证码
     * @param uPhone
     */
    @RequestMapping("/postMsg")
    public void postMsg(String uPhone) {
        SmsUtil.postMsg(uPhone);
    }

    /**
     * 验证短信验证码
     * @param uPhone
     */
    @RequestMapping("/verifyMsg")
    public void verifyMsg(String code, String uPhone) {
        SmsUtil.verifyMsg(code, uPhone);
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值