腾讯云发送短信

简介:阿里云中的短信服务已经不提供个人用户的入口,但是腾讯云中提供了已认证之后的域名的短信服务接口,所以如今只要有一个已经认证之后的域名就可以使用短信服务

  1. 在腾讯云官网 注册账号
  2. 完成实名认证
  3. 登陆腾讯云,产品中选择”短信服务
  4. 申请签名
    在这里插入图片描述
    在这里插入图片描述
    注:最后的短信为
    【jiachzhao】5678为您的登录验证码,请于123分钟内填写。如非本人操作,请忽略本短信。此处的签名内容即为【xxxxx】短信发送的显示
  5. 申请模板
    在这里插入图片描述注意此处的参数需按照格式来,并记住参数个数
  6. 下载sdk在这里插入图片描述
    此处已Java单发带模板来说明
public class Send {

    // 短信应用SDK AppID
    int appid = 1400182100; // 1400开头

    // 短信应用SDK AppKey
    String appkey = "xxxxxxxxxxxxxxxxxxx";

    // 需要发送短信的手机号码
    String[] phoneNumbers = {"xxxxxx"};

    // 短信模板ID,需要在短信应用中申请
    int templateId = xxxxx; // NOTE: 这里的模板ID`7839`只是一个示例,真实的模板ID需要在短信控制台中申请

    // 签名
    String smsSign = "xxxxx"; // NOTE: 这里的签名"腾讯云"只是一个示例,真实的签名需要在短信控制台中申请,另外签名参数使用的是`签名内容`,而不是`签名ID`

    @Test
    public void test(){
        try {
            String[] params = {"5678","123"};
            //注意此处的参数需要为模板中参数的个数
            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 (IOException e) {
            // 网络IO错误
            e.printStackTrace();
        }


    }

}

注意 String[] params = {“5678”,“123”}; //注意此处的参数需要为模板中参数的个数 其他发送场景请查看官方文档