腾讯云短信发送api(SendSms)--java

 一、申请腾讯云帐号并开通短信服务(开通短信服务需要手机实名认证)

1、注册或登录地址:登录 - 腾讯云

2、登录后搜索:短信

腾讯云短信发送api(SendSms)--java_第1张图片

腾讯云短信发送api(SendSms)--java_第2张图片 3、创建签名,注意,这里的签名内容在代码里面要用到。(提交审核两个小时之内会有审核结果)

腾讯云短信发送api(SendSms)--java_第3张图片 腾讯云短信发送api(SendSms)--java_第4张图片

 4、创建正文模版(我这里选择了一个默认的,这个可以添加自定义模版)

腾讯云短信发送api(SendSms)--java_第5张图片

 二、代码如下

腾讯云文章:java对接腾讯云短信,通过api发送短信 - 云+社区 - 腾讯云

1、maven依赖 


        
            com.tencentcloudapi
            tencentcloud-sdk-java
            
            3.0.112
        
    

2、代码块,对应的参数需要填写自己才能调用成功哦。


public class TestCotroller {
    //你创建的应用AppID
    public static final String appid = "1400610000";
    //手机号码,注意如果是国内的手机号码需要加86不然会报错
    public static final String phone = "+8613207166222";
    //你的正文模板ID
    public static final String templated = "1246666";
    //你的签名模板中的内容,不是签名ID
    public static final String smsSign = "这是测试";
//    public static final String url = "https://yun.tim.qq.com/v3/tlssmssvr/sendsms";
    public static final String secretId = "AKIDIQIvHMAiz0VjgMltmNhkX2GDtJSKxxx7";
    public static final String secretKey = "Xpqa3FBqELHxMDrFNEo8AvPdaHhrkxxx";

    public static void main(String[] args) {
        test();
    }

    public static void test(){
        // 实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey,见《创建secretId和secretKey》小节
        Credential cred = new Credential(secretId, secretKey);

        // 实例化要请求产品(以cvm为例)的client对象
        ClientProfile clientProfile = new ClientProfile();
        clientProfile.setSignMethod(ClientProfile.SIGN_TC3_256);
        //第二个ap-chongqing 填产品所在的区
        SmsClient smsClient = new SmsClient(cred, "ap-nanjing");
        SendSmsRequest sendSmsRequest = new SendSmsRequest();
        //appId ,见《创建应用》小节
        sendSmsRequest.setSmsSdkAppid(appid);
        //发送短信的目标手机号,可填多个。
        String[] phones={phone};
        sendSmsRequest.setPhoneNumberSet(phones);
        //模版id,见《创建短信签名和模版》小节
        sendSmsRequest.setTemplateID(templated);
        //模版参数,从前往后对应的是模版的{1}、{2}等,见《创建短信签名和模版》小节
        String [] templateParam={"123456"};
        sendSmsRequest.setTemplateParamSet(templateParam);
        //签名内容,不是填签名id,见《创建短信签名和模版》小节
        sendSmsRequest.setSign(smsSign);
        try {
            //发送短信
            SendSmsResponse sendSmsResponse= smsClient.SendSms(sendSmsRequest);
            System.out.println(sendSmsResponse.getSendStatusSet()[0].getMessage());
        } catch (TencentCloudSDKException e) {
            e.printStackTrace();
        }
    }
}

3、重要对应参数说明

3.1:appid:应用管理--应用列表:里会有一个系统默认应用appid

腾讯云短信发送api(SendSms)--java_第6张图片

 

3.2:templated:国内短信--正文模版管理:对应的id

腾讯云短信发送api(SendSms)--java_第7张图片

 3.3:smsSign:国内短信--签名管理--创建的内容并且审核通过的签名字段才行

腾讯云短信发送api(SendSms)--java_第8张图片

 3.4:产品所在区:如下图

腾讯云短信发送api(SendSms)--java_第9张图片

3.5:secretId与secretKey:如下图,点击“云api密钥”超链接即可看到

腾讯云短信发送api(SendSms)--java_第10张图片

腾讯云短信发送api(SendSms)--java_第11张图片

腾讯云短信发送api(SendSms)--java_第12张图片

现在相比以前优化了很多,一些加密的方法都封装起来了,现在只需要传入对应的参数就行了很方便,花了大半天的时间弄好的。

你可能感兴趣的:(腾讯云,java)