项目接入腾讯云短信服务SMS实现向用户发送手机验证码-创新互联-成都快上网建站

项目接入腾讯云短信服务SMS实现向用户发送手机验证码-创新互联

1、自述

早在18年的时候,我就在项目中使用过阿里云的短信服务,现在我上阿里云短信控制台看,还能看到当时创建的短信签名,如下图所示。
在这里插入图片描述

为古塔等地区用户提供了全套网页设计制作服务,及古塔网站建设行业解决方案。主营业务为网站制作、网站建设、古塔网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

出于某种原因,我现在想重新申请一个新的签名,却审批失败了,原因是:
在这里插入图片描述
意思很明确,就是说你必须要有一个上线的应用(公网能访问的),自己个人学习或者做一些线下项目啊都是申请不到短信签名的,之前18年的时候并没有这么严格。

目前有两种方案:

  1. 买云服务器,买域名,备案域名
  2. 去别的云看看?比如腾讯云、华为云等

第一种方案的话需要花钱,自己又只是个人用户,并没有需要上线的项目,所以这里先去腾讯云看看情况吧。

经过自己的一番研究之后,发现腾讯云也一样,需要有上线的项目才能申请到短信签名,但万幸的是腾讯云支持公众号和小程序,毕竟是自家的产品,而且公众号和小程序这两样我都有,因此就顺利申请到短信签名了。

2、腾讯云短信服务控制台

一般的步骤是:申请短信签名->申请短信模板->发短信测试,模板就像下面这样的,
在这里插入图片描述
其中{1}、{2}是变量,现在我们在腾讯云短信服务控制台上发一条短信试试。

腾讯云短信服务控制台链接:https://console.cloud.tencent.com/smsv2

新建群发任务,如下图所示:
在这里插入图片描述
上传短信变量文件,比如csv格式文件内容如下所示:

客户手机号,短信内容变量1,短信内容变量2
131########,162626,5
156########,162627,5

最后点击确定,等待审核通过后就能收到短信了。

3、Java SDK发送短信

实际情况下我们会在项目中调用腾讯云的SDK去发送短信,这里演示Java SDK。

Maven依赖:

com.tencentcloudapitencentcloud-sdk-java4.0.11

腾讯云短信服务相关接口Java SDK文档:https://cloud.tencent.com/document/product/382/43194

这个文档写的很详细了,我就没必要再重写一遍了,下面展示一下我的发短信的测试代码(最简原则,去掉非必须的代码):

// 1.构造认证对象
Credential cred = new Credential("secretId", "secretKey");
// 2.构造客户端配置
HttpProfile httpProfile = new HttpProfile();
httpProfile.setReqMethod("POST");
httpProfile.setEndpoint("sms.tencentcloudapi.com");
ClientProfile clientProfile = new ClientProfile();
clientProfile.setHttpProfile(httpProfile);
// 3.构造客户端
SmsClient client = new SmsClient(cred, "ap-guangzhou",clientProfile);
// 4.请求参数
String sdkAppId = "";
String signName = "";
String templateId = "";
String[] templateParamSet = {""};
String[] phoneNumberSet = {""};
// 5.构造请求对象
SendSmsRequest req = new SendSmsRequest();
req.setSmsSdkAppid(sdkAppId);
req.setSign(signName);
req.setTemplateID(smsSendRequest.getTemplateId());
req.setTemplateParamSet(templateParamSet);
req.setPhoneNumberSet(phoneNumberSet);
// 6.发送请求
SendSmsResponse res = null;
try {res = client.SendSms(req);
} catch (TencentCloudSDKException e) {log.error(e.getMessage(),e);
}
log.info(SendSmsResponse.toJsonString(res));

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网页名称:项目接入腾讯云短信服务SMS实现向用户发送手机验证码-创新互联
网站地址:http://kswjz.com/article/cojgsh.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流