java 基于 腾讯云 发送短信验证码 java集成短信验证码发送功能
这里介绍基于 腾讯云发送短信服务
文章图片
文章图片
一,注册腾讯云
这里省略注册步骤,很简单
二,选择短信服务
首页的产品 —> 通信服务 ----> 短信
三,点击应用中 配置短信内容
3.0 创建一个新的应用 名称随意
文章图片
文章图片
3.1
【java应用|java 基于 腾讯云 发送短信验证码】
文章图片
文章图片
3.2
文章图片
文章图片
3.3 创建短信签名 这里需要验证
个人建议 使用 微信公众号 申请完可以和客服沟通下 加快审核效率
审核通过以后是这样
文章图片
3.4 编辑短信正文
创建短信正文模板
文章图片
等待审核通过即可,一般5到10分钟即可
四,java中代码实现短信验证码发送
4.1 我这里用的idea maven 引入相关依赖
com.github.qcloudsms
qcloudsms
1.0.5
junit
junit
4.12
>test
4.2 编写相关代码
package com.shsxt.server.service;
import com.alibaba.fastjson.JSONException;
import com.github.qcloudsms.SmsSingleSender;
import com.github.qcloudsms.SmsSingleSenderResult;
import com.shsxt.api.service.ISendMessage;
import javax.xml.ws.http.HTTPException;
public class SendMessage implements ISendMessage {public static void main(String args[]){
new SendMessage().sendMessage();
}@Override
publicvoid sendMessage() {
// 短信应用SDK AppID
int appid = 你的AppID;
// 1400开头// 短信应用SDK AppKey
String appkey = 你的AppKey;
// 需要发送短信的手机号码
String[] phoneNumbers = {"要发送的号码,可以多个"};
// 短信模板ID,需要在短信应用中申请
int templateId = 短信模板的ID;
// NOTE: 这里的模板ID`7839`只是一个示例,真实的模板ID需要在短信控制台中申请
//templateId7839对应的内容是"您的验证码是: {1}"
// 签名
String smsSign = "你的短信签名内容";
// NOTE: 这里的签名"腾讯云"只是一个示例,真实的签名需要在短信控制台中申请,另外签名参数使用的是`签名内容`,而不是`签名ID`try {
String[] params = {"短信验证码"};
//数组具体的元素个数和模板中变量个数必须一致,例如事例中templateId:5678对应一个变量,参数数组中元素个数也必须是一个
SmsSingleSender ssender = new SmsSingleSender(appid, appkey);
SmsSingleSenderResult result = ssender.sendWithParam("86", phoneNumbers[0],
templateId, params, smsSign, "", "");
// 签名参数未提供或者为空时,会使用默认签名发送短信
System.out.println(result);
} catch (HTTPException e) {
// HTTP响应码错误
e.printStackTrace();
} catch (JSONException e) {
// json解析错误
e.printStackTrace();
} catch (Exception e) {
// 网络IO错误
e.printStackTrace();
}}
}