Java调用腾讯云短信接口,完成验证码的发送(不成功你来砍我!!)
Posted 掉发的小王
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java调用腾讯云短信接口,完成验证码的发送(不成功你来砍我!!)相关的知识,希望对你有一定的参考价值。
一、前言
- 快速入门 ---> 开始创建
- 签名管理 --->完善信息(要有备案的域名或者APP)
- 正文模板管理 --->创建正文模板
- 快速入门 --->查看成功
- 应用列表 --->SDK AppID和App Key(重要,后面要用)
- 正文模板管理 ---> 模板ID(重要,后面要用)
- 签名管理 ---> 内容(重要,后面要用)
- 签名管理 --->完善信息(要有备案的域名或者APP)
三、导入依赖
<dependency>
<groupId>com.github.qcloudsms</groupId>
<artifactId>qcloudsms</artifactId>
<version>1.0.5</version>
</dependency>
四、运行代码
import cn.hutool.json.JSONException;
import com.github.qcloudsms.SmsSingleSender;
import com.github.qcloudsms.SmsSingleSenderResult;
import com.github.qcloudsms.httpclient.HTTPException;
import java.io.IOException;
public class Message {
public static void main(String[] args) {
Message message = new Message();
//输入要发送的手机号
message.sendMessage("手机号码");
}
// 短信应用SDK AppID --- 对应二、准备的5
int appid = 1400009099; // 1400开头
// 短信应用SDK AppKey --- 对应二、准备的5
String appkey = "9ff91d87c2cd7cd0ea762f141975d1df37481d48700d70ac37470aefc60f9bad";
// 短信模板 ID,需要在短信应用中申请 --- 对应二、准备的6
int templateId = 7839; // NOTE: 这里的模板ID`7839`只是一个示例,真实的模板ID需要在短信控制台中申请
// 签名 --- 对应二、准备的7
String smsSign = "腾讯云"; // NOTE: 这里的签名"腾讯云"只是一个示例,真实的签名需要在短信控制台中申请,另外签名参数使用的是`签名内容`,而不是`签名ID`
/**
* 腾讯云发送短信验证码
* @param phoneNumber 需要发送给哪个手机号码
*
*/
public void sendMessage(String phoneNumber) {
try{
// 我们随机生成四位随机数
String verificationCode = (int) ((Math.random() * 9 + 1) * 1000) + "";
// 数组具体的元素个数和模板中变量个数必须一致 我的模板中需要填写验证码和有效时间,{1},{2}
String[] params = {verificationCode , "5"};
SmsSingleSender singleSender = new SmsSingleSender(appid, appkey);
SmsSingleSenderResult result = singleSender.sendWithParam("86", phoneNumber, templateId, params, smsSign, "", "");
System.out.println("result --->" + result);
} catch (HTTPException e) {
// HTTP 响应码错误
e.printStackTrace();
} catch (JSONException e) {
// JSON 解析错误
e.printStackTrace();
} catch (IOException e) {
// 网络 IO 错误
e.printStackTrace();
}
}
}
五、运行结果
六、总结
以上是关于Java调用腾讯云短信接口,完成验证码的发送(不成功你来砍我!!)的主要内容,如果未能解决你的问题,请参考以下文章