Java 使用阿里云短信的API接口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 使用阿里云短信的API接口相关的知识,希望对你有一定的参考价值。

亲们上午好,写的不好的地方还望指正。谢谢各位!

引言

短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力,支持快速发送短信验证码、短信通知等。(我这里只讲一个最基本的短信的发送验证码的功能)

 

1.第一步咱们先把环境准备好

    1.1首先必须在阿里云注册一个账号,或者使用自己的淘宝账号支付宝账号 都是一样的  然后进行实名认证

    1.2咱们进入控制台(在以上步骤的准备好的情况下)

  技术分享

 

然后点击左上角的产品

  技术分享

 

进来之后会叫你开通  点击开通即可  我的开通了 就直接上图  注册完之后会送10元代金卷  端口服务的

  技术分享

短信签名  和短信模板你们自己添加一下就可以  我就不做多演示了

  下面是代码的实现:

public class SmsUtil {
    
    // 产品名称:云通信短信API产品,开发者无需替换
    static final String product = "Dysmsapi";
    // 产品域名,开发者无需替换
    static final String domain = "dysmsapi.aliyuncs.com";
    // 此处需要替换成开发者自己的AK(在阿里云访问控制台寻找)
    static final String accessKeyId = "accessKeyId";
    static final String accessKeySecret = "accessKeySecret";

    public static SendSmsResponse sendSms() throws ClientException {
        // 初始化acsClient,暂不支持region化
        IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);
        DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
        IAcsClient acsClient = new DefaultAcsClient(profile);
        // 组装请求对象-具体描述见控制台-文档部分内容
        SendSmsRequest request = new SendSmsRequest();
        // 必填:待发送手机号
        request.setPhoneNumbers("手机号");
        // 必填:短信签名-可在短信控制台中找到
        request.setSignName("签名");
        // 必填:短信模板-可在短信控制台中找到
        request.setTemplateCode("短信模板");
        Random rad = new Random();
        // 可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为
        request.setTemplateParam("{\\"name\\":\\"Tom\\", \\"code\\":\\"" + "老婆老婆"
                + ""
                + ""+ "\\"}");
        // 可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者
        request.setOutId("yourOutId");
        // hint 此处可能会抛出异常,注意catch
        SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);
        return sendSmsResponse;
    }
}
/**
 * Created on 17/6/7.
 * 短信API产品的DEMO程序,工程中包含了一个SmsDemo类,直接通过
 * 执行main函数即可体验短信产品API功能(只需要将AK替换成开通了云通信-短信产品功能的AK即可)
 * 工程依赖了2个jar包(存放在工程的libs目录下)
 * 1:aliyun-java-sdk-core.jar
 * 2:aliyun-java-sdk-dysmsapi.jar
 *
 * 备注:Demo工程编码采用UTF-8
 */
public class SmsDemo {
    public static void main(String[] args) throws ClientException, InterruptedException {
        //发短信
        SmsUtil.sendSms();
    }
}

 

 哦了  就那么简单  源码下载地址:

 

以上是关于Java 使用阿里云短信的API接口的主要内容,如果未能解决你的问题,请参考以下文章

PHP-阿里云短信服务api接口

laravel 怎么响应阿里云短信异步通知接口?

java对接阿里云短信服务器,附代码和截图

各位大神,Python怎么调用阿里云API

各位大神,Python怎么调用阿里云API

免 JAR 依赖纯 API 调用阿里云短信接口