欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用阿里云发送短信验证码

程序员文章站 2022-07-10 18:42:49
使用阿里云发送短信验证码准备工作:注册阿里云账号购买阿里云短信服务设置短信模板,添加短信签名添加aliyun-sdk-code依赖 com.aliyun aliyun-java-sdk-core 4.5.1

使用阿里云发送短信验证码

准备工作:

  • 注册阿里云账号
  • 购买阿里云短信服务
  • 设置短信模板,添加短信签名
  1. 添加aliyun-sdk-code依赖

    <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-java-sdk-core</artifactId>
        <version>4.5.1</version>
    </dependency>
    
    
  2. 编写测试函数发送短信代码

    public class SendSmsUtil{
        // 阿里云账号的keyID
        private static String keyId = "LTAI4GCo***8A1djZc1vYjV";
        private static String regionld = "cn-hangzhou";
        private static String secret = "hNV3qpRhe2GdzmnKuCh1R9twVtOrVc";
        public static boolean SendSms(String PhoneNumbers,String TemplateParam) {
            // 1.创建接口API调用对象
            DefaultProfile profile = DefaultProfile.getProfile(regionld, keyId,secret);
            IAcsClient client = new DefaultAcsClient(profile);
            CommonRequest request = new CommonRequest();
            // 2.发送post请求
            request.setSysMethod(MethodType.POST);
            request.setSysDomain("dysmsapi.aliyuncs.com"); //云服务(不能修改)
            request.setSysVersion("2017-05-25"); //版本号(不能修改)
            request.setSysAction("SendSms"); // 发送方式(不能修改)
            request.putQueryParameter("RegionId", "cn-hangzhou");
          // 发送的手机号(多个手机号可以用逗号隔开)
            request.putQueryParameter("PhoneNumbers", 13476683577);
            request.putQueryParameter("SignName", "ABC商城");
            // 3.请求模板(短信模板)
            request.putQueryParameter("TemplateCode", "SMS_199201372");
            // 4.请求模板参数(需要时json数组格式,验证码可以使用随机参数)
         request.putQueryParameter("TemplateParam","{\"code\":" + 8888 + "}");
            try {
                CommonResponse response = client.getCommonResponse(request);
                System.out.println(response.getData());
                return true;
            } catch (ServerException e) {
                e.printStackTrace();
            } catch (ClientException e) {
                e.printStackTrace();
            }
            return false;
    
        }
    }
    

本文地址:https://blog.csdn.net/qq_41530601/article/details/107896764