1、腾讯云短信服务
- 开通短信服务
- 设置短信签名(审核时可以利用微信公众号)
- 设置短信模板
4、创建应用,获取SDKAppID
5、获取secreteid和secretekey,身份唯一标识
2、腾讯云自动生成发送验证码的java代码
先进入短信服务,点击云产品–云api
选择发送短信(SMS)
填入发送短信的相关参数
测试发送验证码
3、在maven工程中接入短信服务
pom.xml导入依赖
<!--腾讯云短信验证码-->
<dependency>
<groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java</artifactId>
<version>3.1.62</version>
</dependency>
编写测试类
public static void main(String [] args) {
try{
// 注意点:填写自己的secreteid和secretekey,密钥在腾讯云访问密钥获取
Credential cred = new Credential("SecretId", "SecretKey");
// 实例化一个http选项,可选的,没有特殊需求可以跳过
HttpProfile httpProfile = new HttpProfile();
httpProfile.setEndpoint("sms.tencentcloudapi.com");
// 实例化一个client选项,可选的,没有特殊需求可以跳过
ClientProfile clientProfile = new ClientProfile();
clientProfile.setHttpProfile(httpProfile);
// 实例化要请求产品的client对象,clientProfile是可选的
SmsClient client = new SmsClient(cred, "ap-guangzhou", clientProfile);
// 实例化一个请求对象,每个接口都会对应一个request对象
SendSmsRequest req = new SendSmsRequest();
//注意点:+86必须要,为国内号码,不然会识别不了国内号码
String[] phoneNumberSet1 = {"+8618773227702"};
req.setPhoneNumberSet(phoneNumberSet1);
//设置自己的SdkAppID
req.setSmsSdkAppid("1400515730");
//设置自己短信签名名称,不是签名id
req.setSign("Devin的小管家");
//设置自己短信模板id
req.setTemplateID("959096");
//设置验证码
String[] templateParamSet1 = {"666666"};
req.setTemplateParamSet(templateParamSet1);
// 返回的resp是一个SendSmsResponse的实例,与请求对象对应
SendSmsResponse resp = client.SendSms(req);
// 输出json格式的字符串回包
System.out.println(SendSmsResponse.toJsonString(resp));
} catch (TencentCloudSDKException e) {
System.out.println(e.toString());
}
}