腾讯云短信服务的申请和验证使用详细流程

项目中用到短信验证功能,看到腾讯云有短信服务,就直接使用了,固然其它公司也会停工短信服务,百度能够找到不少,使用的状况应该大同小异,这里就以腾讯云的短信服务为例,说明一下短信服务的申请和使用。java

1 短信服务申请git

登陆腾讯云以后,在云产品里面选择移动和通讯,短信。github

 

 

在弹出的界面,点击添加应用。json

 

 

在弹出的窗口,填写应用名称和应用简介数组

 

 

填写完成以后,平台会为咱们的应用建立一条应用,点击项目名称“短信测试项目”。网络

 

 

进入以后,里面有两个很是重要的参数appid和appkey,这两个参数会在程序中用到。app

 

 

有了以上两个参数,就能够发短信了,下面就是要配置短信的内容模板,点击上面的国内短信。maven

 

 

而后依次点击短信内容配置—短信签名—建立签名,以后会弹出一个建立短信签名的窗口,须要填写相关信息。函数

 

 

其中红色方框的签名内容,就是短信内容中一开始的签名。这部分填写以后须要腾讯审核,若是材料没问题,审核会很快经过,若是没有经过,就看他们给的失败信息。好比我用的是我的帐号,签名类型就须要选择他用,除了须要公司的营业执照,还须要公司的受权书,他们给提供格式,须要公司盖章。完成以后点击确认,会在短信签名下方生成一条短信签名信息。测试

 

 

短信签名经过以后,须要编辑典型正文,点击上方的短信正文。

 

 

点击建立正文模板,而后会弹出正文模板的窗口。

 

 

此处,模板名称和申请说明可正常填写,重点看一下短信内容的填写,有一个模板示例,按照示例填写。确认。为了不不合法信息,腾讯也是要审核的,这个审核速度也很快。

在短信正文下方也会生成一条信息。

 

 

注意这个地方,红色方框处有一个ID,这也是一个很重要的参数,程序中也会用到,在程序中为templateID,也就是模板ID。

2 程序代码

使用java编写代码,参考地址为https://cloud.tencent.com/document/product/382/13613,程序可分为两部分,一个是maven引入,一个是main函数测试。

Maven部分

<dependency>

  <groupId>com.github.qcloudsms</groupId>

  <artifactId>qcloudsms</artifactId>

  <version>1.0.6</version>

</dependency>

代码部分

package com.example.demo.util;

import com.github.qcloudsms.SmsSingleSender;
import com.github.qcloudsms.SmsSingleSenderResult;
import com.github.qcloudsms.httpclient.HTTPException;
import org.json.JSONException;

import java.io.IOException;

public class QCloudSMS {

    public static void main(String[] args) {
        // 短信应用SDK AppID
        int appid = 1400xxxx; // 1400开头

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

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

        // 短信模板ID,须要在短信应用中申请
        int templateId = 3xxxx9; // NOTE: 真实的模板ID须要在短信控制台中申请
        //templateId7839对应的内容是"您的验证码是: {1}"

        try {
            String[] params = {"5678"};//数组具体的元素个数和模板中变量个数必须一致,例如事例中templateId:5678对应一个变量,参数数组中元素个数也必须是一个
            SmsSingleSender ssender = new SmsSingleSender(appid, appkey);
            SmsSingleSenderResult result = ssender.sendWithParam("86", phoneNumbers[0],
                    templateId, params, "", "", "");  // 签名参数未提供或者为空时,会使用默认签名发送短信
            System.out.println(result);
        } catch (HTTPException e) {
            // HTTP响应码错误
            e.printStackTrace();
        } catch (JSONException e) {
            // json解析错误
            e.printStackTrace();
        } catch (IOException e) {
            // 网络IO错误
            e.printStackTrace();
        }
    }
}

运行程序以后,会在手机上收到一条短信。

 

3 结语

短信服务申请比较简单,使用也不复杂。在一开始使用的时候仍是有一些坑,好比templateID这个参数,是短信正文的ID,不是短信签名的ID,这个在调试的时候也走了弯路。

短信发送程序,在实际使用的时候,发送模块放到util包中,随机码也须要写程序生成。

相关文章
相关标签/搜索