Springboot调用阿里云短信服务

闫云*

短信功能

项目描述

根据阿里云提供的SDK代码,封装在项目内并调用

上传时间

2021.04.01

浏览人数

1245人
闫云*
天津市西青区
Hot:8421

1.注册阿里云账户,配置短信模板

本次学习使用的是诚筑说账号的已有模板,大家可根据下方链接学习如何配置模板

https://developer.aliyun.com/ask/217770?spm=a2c6h.14164896.0.0.550d6361IpBWDQ

:引用阿里云官方文档

 

2.已有模板样式及内容

Springboot调用阿里云短信服务

 

3.阿里云短信服务文档

Springboot调用阿里云短信服务

参数:

(1) PhoneNumbers:信息接受人电话号

(2) SignName:短信签名

(3) TemplateCode:模板编号

(4) TemplateParam:短信内变量(json字符串格式)

 

4.pom.xml文件中添加阿里云短信服务依赖

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>dysmsapi20170525</artifactId>
    <version>2.0.1</version>
</dependency>

 

5.将阿里云示例的函数封装到自己的项目

(1).阿里云示例函数

public class Sample {
    /**
     * 使用AK&SK初始化账号Client
     * @param accessKeyId
     * @param accessKeySecret
     * @return Client
     * @throws Exception
     */
    public static com.aliyun.dysmsapi20170525.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
        Config config = new Config()
                // 您的AccessKey ID
                .setAccessKeyId(accessKeyId)
                // 您的AccessKey Secret
                .setAccessKeySecret(accessKeySecret);
        // 访问的域名
        config.endpoint = "dysmsapi.aliyuncs.com";
        return new com.aliyun.dysmsapi20170525.Client(config);
    }

    public static void main(String[] args_) throws Exception {
        java.util.List<String> args = java.util.Arrays.asList(args_);
        com.aliyun.dysmsapi20170525.Client client = Sample.createClient("accessKeyId", "accessKeySecret");
        SendSmsRequest sendSmsRequest = new SendSmsRequest()
                .setPhoneNumbers(PhoneNumbers)
                .setSignName(SignName)
           .setTemplateCode(TemplateCode)
      .setTemplateParam(TemplateParam);

        // 复制代码运行请自行打印 API 的返回值
        client.sendSms(sendSmsRequest);
    }
}

第一个函数:函数内创建了一个实例,声明了accessKeyId,accessKeySecretendpoint

第二个函数:实现发送短信功能

参数:

accessKeyIdaccessKeySecret:购买服务后,阿里云分配ID及密钥

Endpoint:访问域名(阿里云短信服务的域名,固定数据)

 

(2).封装到自己的项目

Springboot调用阿里云短信服务

package com.wayne.test.utils;

import com.aliyun.dysmsapi20170525.models.*;
import com.aliyun.teaopenapi.models.*;

public class SMSTools {
    /**
     * 使用AK&SK初始化账号Client
     *
     * @param accessKeyId
     * @param accessKeySecret
     * @return Client
     * @throws Exception
     */
    public static com.aliyun.dysmsapi20170525.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
        Config config = new Config()
                // 您的AccessKey ID
                .setAccessKeyId(accessKeyId)
                // 您的AccessKey Secret
                .setAccessKeySecret(accessKeySecret);
        // 访问的域名
        config.endpoint = "dysmsapi.aliyuncs.com";
        return new com.aliyun.dysmsapi20170525.Client(config);
    }

    public static SendSmsResponse sendSms(String PhoneNumbers,String TemplateCode,String TemplateParam) throws Exception {
        com.aliyun.dysmsapi20170525.Client client = SMSTools.createClient("accessKeyId", "accessKeySecret");
        SendSmsRequest sendSmsRequest = new SendSmsRequest()
                .setPhoneNumbers(PhoneNumbers)
                .setSignName("诚筑说")
                .setTemplateCode(TemplateCode)
                .setTemplateParam(TemplateParam);
        // 复制代码运行请自行打印 API 的返回值
        return client.sendSms(sendSmsRequest);
    }
}

第一个函数:不需要修改,按照阿里云提供即可

第二个函数:阿里云提供的函数为main函数,这里需要我们封装成静态函数

: 1/返回值类型为SendSmsResponse

   2/accessKeyIdaccessKeySecret可以直接在函数内添参数.此处因账号信息不能外泄,固以变量名代替

   3/SignName也可直接写固定数据

 

(3).调用封装好的函数

@GetMapping("sendSMS")
public JsonMsgPojo sendSms(String PhoneNumbers,String TemplateCode,String name,String num,String days) throws Exception {
    String TemplateParam = "{\"name\":\""+name+"\",\"num\":\""+num+"\",\"days\":\""+days+"\"}";
    SendSmsResponse sr = SMSTools.sendSms(PhoneNumbers,TemplateCode,TemplateParam);
    return new JsonMsgPojo(true,"ok!",sr);
}

TemplateParam:要求为json字符串格式,这里需要我们将模板内的参数拼接成json字符串格式

 

(4).测试接口

Springboot调用阿里云短信服务Springboot调用阿里云短信服务

成功发送并接收到信息


闫云*

4.8分

keep going!
Django 天津Java培训 天津Java培训班 天津Java培训哪家好?天津Java培训机构 java python ajax 天津Java培训 天津Java培训班 天津Java培训班管用吗 天津Java培训班哪家好 Java 天津Java培训 Java培训 天津编程培训 Java Java培训班 Eclipse Tomcat Git 天津Java培训 Java培训 天津编程培训 Java Java培训班 Eclipse MyEclipse IntelliJ IDEA 天津Java培训 Java培训班 Java开发 Java 天津Java开发培训 Eclipse MyEclipse 天津Java培训 天津Java开发培训 天津Java培训班 Eclipse MyEclipse 天津Java培训 天津Java开发培训 天津Java培训班 Java开发培训 C/C++ Java Python 天津Java培训 天津Java开发培训 天津Java培训班 Java开发培训 C/C++ Java Python 天津Java培训 天津Java开发培训 天津Java培训班 Java开发培训 C/C++ Java Python 天津Java培训 天津Java开发培训 天津Java培训班 Java开发培训 C/C++ Java Python 天津Java培训 天津Java开发培训 天津Java培训班 Java开发培训 C/C++ Java Python 天津Java培训 天津Java开发培训 天津Java培训班 Java开发培训 Java python web前端 天津Java培训 天津Java 培训班 天津Java培训机构 天津Java开发培训 Editplus ltraEdit Eclipse 天津Java培训 天津Java培训班 Java开发培训 Java培训机构 ps ai 天津Java培训 天津Java培训班 天津Java培训机构 Java培训 Java开发培训 java python web 天津Java培训 天津Java培训机构 天津Java培训班 天津Java培训学校 java python web 天津Java培训 天津Java培训机构 天津Java培训学校 天津Java培训哪家好 Java python web 天津Java培训 天津Java培训学校 Java python web 天津Java培训 天津Java 开发培训 天津Java开发培训机构 java python web 天津Java培训 天津Java培训机构 Java培训班 天津Java培训学校 Java python web 天津Java培训 天津Java培训班 天津Java培训机构 Java培训 Java python web 天津Java培训 天津Java培训机构 天津Java培训班 Java培训 java web python 天津Java培训 天津Java培训班 天津Java培训学校 Java培训机构 Java培训 java python web 天津Java培训 天津Java培训机构 Java培训 天津Java培训学校 java python web 天津Java培训 天津Java培训班 天津Java培训机构 Java培训学校 java python web 天津Java培训 天津Java培训班 天津Java培训学校 Java培训 java python web 天津Java培训 天津Java配训学校 Java培训 java web python 天津Java培训 天津Java培训班 Java培训机构 Java培训 Java python web 天津Java培训 天津Java培训班 天津Java培训机构 Java培训 java python web 天津Java培训 天津Java培训班 天津Java培训机构 java python web 天津Java培训 天津Java培训班 天津Java培训机构 Java web python 天津Java培训 天津Java培训学校 Java培训 java web python 天津Java培训 天津Java培训机构 Java培训 java web python 天津Java培训 天津Java培训机构 Java培训 java web python 天津Java培训 天津Java培训机构 Java培训 java web python 天津Java培训 天津Java培训班 Java培训 java web python 天津Java培训 天津Java培训班 Java培训机构 java python web 天津Java培训 天津Java培训哪家好
闫云*    8421 天津市西青区 设计师杨冰是女孩 1992.**.**
本网站已在中国版权保护中心登记了美术作品著作权与软件著作权违者将依法追究责任,特此声明! | Copyright©2013-2022,zhuzuoji.com | 诚筑说培训学校(天津)有限公司内容支持 | 京ICP备17020986号-5