Error message here!

Hide Error message here!

忘记密码?

Error message here!

请输入正确邮箱

Hide Error message here!

密码丢失?请输入您的电子邮件地址。您将收到一个重设密码链接。

Error message here!

返回登录

Close

实现springboot对接腾讯云短信

TiAmo_K 2019-12-02 21:52:00 阅读数:40 评论数:0 点赞数:0 收藏数:0

1,导入pom依赖

 <dependency>
<groupId>com.github.qcloudsms</groupId>
<artifactId>qcloudsms</artifactId>
<version>1.0.6</version>
</dependency>

2,编写工具类

 package com.chesupi.message.util;

import com.github.qcloudsms.SmsSingleSender;
 import com.github.qcloudsms.SmsSingleSenderResult;
 import lombok.extern.slf4j.Slf4j;

@Slf4j
 public class SmsUtil {
 private final static int appid = 1400XXXXXX;
 private final static String appkey = "6def9c1d5314bce4070e4b4xxxxxxxxx";

public static String sendMessage(int templateId, String smsSign, String phoneNumber,String[] replacedValues) {

String status = "";
 //给手机发送短信
 //1.腾讯云自己项目的AppID
 //2.腾讯云自己项目的Appkey
 //3 短信的模板ID templateId
 //4 签名的名字 smsSign
 //5 .给谁发 phoneNumber
 //String phoneNumber = "17671775xxx";
 //6. 验证码:手动不随机验证码 最多六位数 只能是数字
 // String[] params = {"876032"};
 //7.发送短信对象
SmsSingleSender ssender = new SmsSingleSender(appid,appkey);

//地区,电话,模板ID,验证码,签名
try {
 SmsSingleSenderResult result = ssender.sendWithParam("86", phoneNumber, templateId, replacedValues, smsSign, "", "");
 status=result.errMsg;
 log.info("sms send status,template id [{}],phone is [{}],status is [{}] ",templateId,phoneNumber,status);
 } catch (Exception e){
 log.info("sms send status,template id [{}],phone is [{}],status is [{}] ",templateId,phoneNumber,status,e);
  }
 return status; // 此处的status只有发送成功是"OK"
 }

3,调用工具类发送短信

 package com.chesupi.message.service;

import com.chesupi.message.util.SmsUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;

@Component
 @Slf4j
 public class DealerRegisterMessageReceiver {

/**
 * 接收消息方法
 */
public void receiverMessage(String message) {
 try {
 log.info("用户注册收到一条新消息:[{}]", message);
 String[] messageArray=message.split(",");
 String phoneNumber = messageArray[0];
 String[] replacedValues={messageArray[1]};
 SmsUtil.sendMessage(888878,"短信签名名字", phoneNumber,replacedValues); // 888878 是templateId “短信签名名字” 这个是腾讯天申请的短信签名 replacedValues 是短信内容需要的参数
}catch (Exception e){
 log.error("send sms exception, message is [{}]",message);
  }
  }

}

完成! 

 

把templateId smsSign 放在方法参数是为了其他短信模版可以通用此方法!

 

版权声明
本文为[TiAmo_K]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/LKiss/p/11973543.html