Springboot 中短信服务配置

田振*

java,springboot,短信服务,sdk

项目描述

演示在注册阿里云短信服务后,在Springboot中如何使用

上传时间

2023.02.20

浏览人数

464人
田振*
天津市河东区
Hot:2408

一,配置Pom文件,导入Maven依赖

-------------------------------------

<!--短信依赖-->

<dependency>

   <groupId>com.aliyun</groupId>

   <artifactId>aliyun-java-sdk-core</artifactId>

   <version>4.5.16</version>

</dependency>


<dependency>

   <groupId>com.aliyun</groupId>

   <artifactId>aliyun-java-sdk-dysmsapi</artifactId>

   <version>1.1.0</version>

</dependency>

-------------------------------------


二,代码演示

-------------------------------------

//controller层

    @Autowired

    private MessageService messageService;


    //发短信功能send message

    @PostMapping("sendMessage")

    public JsonMsgPojo sendMessage(String phoneNumbers) {

        Map<String, String> contentMap = new HashMap<>();

        //String phoneNumbers 接收短信的手机号码

        //短信签名名称

        contentMap.put("signName", "诚筑说");

        //短信模板CODE

        contentMap.put("templateCode", "SMS_254890710");

        //以下是request.setTemplateParam 所需

        //内容参数1

        contentMap.put("name", "大哥");

        //内容参数2

        contentMap.put("time", "还有20分钟");

        //短信模板变量对应的实际值

        contentMap.put("templateParam", "{\"name\":\"" + contentMap.get("name") + "\",\"time\":\"" + contentMap.get("time") + "\"}");

        return messageService.sendMessage(phoneNumbers, contentMap);

    }

-------------------------------------

//接口

@Service

public interface MessageService {

    JsonMsgPojo sendMessage(String phoneNumbers, Map<String, String> contentMap);

}

-------------------------------------

//实现层

import com.aliyuncs.DefaultAcsClient;

import com.aliyuncs.IAcsClient;

import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest;

import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse;

import com.aliyuncs.exceptions.ClientException;

import com.aliyuncs.exceptions.ServerException;

import com.aliyuncs.profile.DefaultProfile;

import com.book.newbook.domain.JsonMsgPojo;

import com.book.newbook.service.MessageService;

import com.google.gson.Gson;

import org.springframework.beans.factory.annotation.Value;

import org.springframework.stereotype.Service;


import java.util.HashMap;

import java.util.Map;



@Service

public class MessageServiceImpl implements MessageService {


    //application.properties文件配置以下信息(可选)

    //spring.messages.accessKeyId = *********(填自己的accessKeyId)

    //spring.messages.accessKeySecret = *********(填自己的accessKeySecret)

    

    @Value("${spring.messages.accessKeyId}")

    private String ACCESS_KEY_ID;

    @Value("${spring.messages.accessKeySecret}")

    private String ACCESS_KEY_SECRET;


    @Override

    public JsonMsgPojo sendMessage(String phoneNumbers, Map<String, String> contentMap) {

        DefaultProfile profile = DefaultProfile.getProfile("cn-beijing", ACCESS_KEY_ID, ACCESS_KEY_SECRET);

        /** use STS Token

         DefaultProfile profile = DefaultProfile.getProfile(

         "<your-region-id>",           // The region ID

         "<your-access-key-id>",       // The AccessKey ID of the RAM account

         "<your-access-key-secret>",   // The AccessKey Secret of the RAM account

         "<your-sts-token>");          // STS Token

         **/

        IAcsClient client = new DefaultAcsClient(profile);

        SendSmsRequest request = new SendSmsRequest();

        request.setPhoneNumbers(phoneNumbers);//接收短信的手机号码

        request.setSignName(contentMap.get("signName"));//短信签名名称

        request.setTemplateCode(contentMap.get("templateCode"));//短信模板CODE

        request.setTemplateParam(contentMap.get("templateParam"));//短信模板变量对应的实际值

        

        try {

            SendSmsResponse response = client.getAcsResponse(request);

            System.out.println(new Gson().toJson(response));

            return new JsonMsgPojo<>(200, "发送成功", null);

        } catch (ServerException e) {

            e.printStackTrace();

            return new JsonMsgPojo<>(500, "发送失败", "系统错误");

        } catch (ClientException e) {

            Map<String, Object> m = new HashMap<>();

            m.put("ErrCode", e.getErrCode());

            m.put("ErrMsg", e.getErrMsg());

            m.put("RequestId", e.getRequestId());

            return new JsonMsgPojo<>(500, "发送失败", m);

        }

    }

}

-------------------------------------

附:阿里云  java SDK官方帮助文档

https://help.aliyun.com/document_detail/112148.html

附:阿里云 短信服务 ,注册获取accessKeyId,官方帮助文档

https://help.aliyun.com/document_detail/71160.html


田振*

4.9分

保持专注
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培训哪家好
田振*    2408 天津市河东区 设计师杨冰是女孩 1987.**.**
本网站已在中国版权保护中心登记了美术作品著作权与软件著作权违者将依法追究责任,特此声明! | Copyright©2013-2022,zhuzuoji.com | 诚筑说培训学校(天津)有限公司内容支持 | 电话:400-026-7117 | 京ICP备17020986号-5