专栏首页全栈架构师腾讯云短信服务的申请和验证使用详细流程
原创

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

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

1 短信服务申请

登录腾讯云之后,在云产品里面选择移动和通信,短信。这里附上腾讯云短信地址

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

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

填写完成之后,平台会为我们的应用创建一条应用,点击项目名称“短信测试项目”。

进入之后,里面有两个非常重要的参数appid和appkey,这两个参数会在程序中用到。

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

然后依次点击短信内容配置—短信签名—创建签名,之后会弹出一个创建短信签名的窗口,需要填写相关信息。

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

短信签名通过之后,需要编辑典型正文,点击上方的短信正文。

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

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

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

注意这个地方,红色方框处有一个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包中,随机码也需要写程序生成。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

相关文章

  • 云服务器如何绑定域名操作流程

    2) 这里需要做进一步的设置,比如,在更多选项卡中,开启CNAME加速,开启搜索引擎推送等。

    React架构设计
  • 如何在腾讯云安装宝塔面板

    2.点击服务市场 -> 管理与监控 -> 搜索“宝塔” -> 选择“宝塔Linux面板5.9” -> 开始重装

    React架构设计
  • WordPress安装后必做的18件事

    创建WordPress博客后该做些什么?安装WordPress后,要正确设置和启动网站,还需要做很多事情。在本文中,我们将分享安装WordPress后应该立即做...

    React架构设计
  • 智慧城市解决方案

    智慧城市不只是个集成平台,而是能够让用户在这个平台里,要自己想要的,删除自己不需要的,深度为用户考虑,集成功能以后,怎么用的更舒服,得到更好的体验,是我们重要考...

    中云微迅
  • 简洁疫情查询服务上线

    大家可以访问丁香园原始页面浏览 : htt...

    Python知识大全
  • 微服务中的短信服务如何设计?

    发送短信功能,在开发过程中是最常见的需求。用户登录验证码的发送,活动促销短信的发送等。本Chat将带领你深入的去学习如何设计和实现一个通用的基础短信服务,采用S...

    南风
  • 大数据建模方法的比较

    在DT时代,互联网,智能设备和其他形式的信息技术的爆炸性增长使得数据以同样令人印象深刻的速度增长。这个时代的挑战似乎是如何对所有这些数据进行分类,组织和存储。

    liuxuewen
  • 12/8学习总结-PHP测试

    繁花云
  • 使用信息架构视图访问数据库元数据

    元数据简介 元数据 (metadata) 最常见的定义为"有关数据的结构数据",或者再简单一点就是"关于数据的信息",日常生活中的图例、图书馆目录卡和名片等都...

    张善友
  • Golang语言社区--Go语言学习资料下载(PDF文件、视频)

    大家好,我是社区主编彬哥,今天给大家整理了部分的GO语言相关的学习资料;已经上传至百度网盘;欢迎下载;后面会持续更新:

    李海彬

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动