Java调用腾讯云短信接口,完成验证码的发送
一、前言
我们在一些网站注册页面,经常会见到手机验证码的存在,这些验证码一般的小公司都是去买一些大的厂家的短信服务,自己开发对小公司的成本花费太大了!今天小编就带着大家来学习一下腾讯云的短信接口,体验一下,自己实现!!!
二、准备
小编这里把网站地址给大家 —>腾讯云短信控制台
快速入门 —> 开始创建
签名管理 —>完善信息(要有备案的域名或者APP)
正文模板管理 —>创建正文模板
快速入门 —>查看成功
应用列表 —>SDK AppID和App Key(重要,后面要用)
正文模板管理 —> 模板ID(重要,后面要用)
签名管理 —> 内容(重要,后面要用)
三、导入依赖
<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(); } } }
五、运行结果
六、总结
本次小编只是实现可以发送成功,仅供刚刚入门的童鞋学习参考.大家可以去官方API文档去看,里面会有很多种类型,小编的代码也是从上面copy下来的!!
官网文档API —>腾讯云官方API文档