网站首页 > 技术教程 正文
前言
提到短信接口,相信每一位程序猿都不会陌生,它可以来帮助我们实现短信验证码、短信通知等等功能,刚好最近在帮朋友开发一套会员管理系统,里面也集成了短信功能(短信接口平台选择的是腾讯云平台),借此机会就和大家分享一下Java代码如合调用腾讯云平台的短信接口。
顺便提一句~目前大部分短信接口平台都需要商家或公司认证才可以使用,而且每一家平台的短信价格也都不相同,如果你只是想个人学习的话,本人比较推荐腾讯云平台(个人认证即可使用;认证后赠送测试短信;购买价格相对较低;接口文档详细)。
注册腾讯云平台并申请签名
想使用腾讯云的短信接口,需要先做点准备工作~ 首先就是注册一个腾讯云平台(腾讯云链接:cloud.tencent.com/)账号并进入控制台,在左上角的“云产品”中找到“短信”,进入到短信控制台。
接下来就是需要认证账号、申请签名和短信模板了,我认证的账号是个人账号,在申请签名时“签名类型”选择的是“公众号”(如果签名类型选择公众号的话,就需要先去微信开放平台申请一个微信公众号,再来申请短信签名),后面按照提示一步一步的操作就可以了。
申请短信模板时需要注意的是,需要在签名通过后再申请短信模板,否则模板的申请是很难通过的。
以上就是前期的准备工作,废话不多说了,直接上代码
调用短信接口
public static void sendMessage(String phoneNumber) {
try{
// 实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey,此处还需注意密钥对的保密
// 密钥可前往https://console.cloud.tencent.com/cam/capi网站进行获取
Credential cred = new Credential(secretId, secretKey);
// 实例化一个http选项,可选的,没有特殊需求可以跳过
HttpProfile httpProfile = new HttpProfile();
httpProfile.setEndpoint("sms.tencentcloudapi.com");
// 实例化一个client选项,可选的,没有特殊需求可以跳过
ClientProfile clientProfile = new ClientProfile();
clientProfile.setHttpProfile(httpProfile);
// 实例化要请求产品的client对象,clientProfile是可选的
SmsClient client = new SmsClient(cred, "ap-beijing", clientProfile);
// 实例化一个请求对象,每个接口都会对应一个request对象
SendSmsRequest req = new SendSmsRequest();
String[] phoneNumberSet = {phoneNumber}; //短信接受号码
req.setPhoneNumberSet(phoneNumberSet);
req.setSmsSdkAppId("xxxxx"); //SdkAppId
req.setSignName("xxxxx"); //短信签名
req.setTemplateId("xxxxx"); //短信模板ID
//设置参数
String[] templateParamSet = {DateUtils.getDate(),phoneNumber};
req.setTemplateParamSet(templateParamSet);
// 返回的resp是一个SendSmsResponse的实例,与请求对象对应
SendSmsResponse resp = client.SendSms(req);
// 输出json格式的字符串回包
System.out.println(SendSmsResponse.toJsonString(resp));
} catch (TencentCloudSDKException e) {
System.out.println(e.toString());
}
}
复制代码
调用接口时有几点需要注意一下:
- 访问console.cloud.tencent.com/cam/capi进入到“访问管理控制台”,在“访问密钥”→“API密钥管理”中获取secretId和secretKey
- SdkAppId的获取方式是打开“短信控制台”→“应用管理”→“应用列表”,在应用列表中即可看到应用所对应的SdkAppId
- ==req.setSignName("xxxxx"); 设置的是申请下来的签名的内容,并非签名ID==
- 在设置参数时,参数的顺序要与模板设置的{1}、{2}...相对应,如果你的腾讯云平台账号认证的是个人账号,那么参数的长度也会有相应的限制(参数长度不能大于12)
小结
本人经验有限,有些地方可能讲的没有特别到位,如果您在阅读的时候想到了什么问题,欢迎在评论区留言,我们后续再一一探讨?
希望各位小伙伴动动自己可爱的小手,来一波点赞+关注 (????) 让更多小伙伴看到这篇文章~ 蟹蟹呦(●'?'●)
如果文章中有错误,欢迎大家留言指正;若您有更好、更独到的理解,欢迎您在留言区留下您的宝贵想法。
爱你所爱 行你所行 听从你心 无问东西
作者:不肯过江东丶
链接:https://juejin.cn/post/7073664371511001101
猜你喜欢
- 2024-11-24 新骗局!收到微信帐号异地登录短信?小心中招!
- 2024-11-24 Step by Step之最简腾讯云短信实践
- 2024-11-24 腾讯云短信服务实现 Java 发送手机验证码(SpringBoot+Redis 实现)
- 2024-11-24 哪家国际短信的接口平台比较好?Twilio&腾讯云&Submail对比评测
- 2024-11-24 腾讯悄悄上架微信加密聊天小程序“秘密信函”,防止隐私泄露
- 2024-11-24 315晚会再曝隐私泄露隐患,腾讯手机管家守护用户手机安全
- 2024-11-24 头部玩家|腾讯慌了?罗永浩力推的“子弹短信”下线腾讯新闻源
- 2024-11-24 融资现罗生门:子弹短信与腾讯,到底谁在躲着谁?
- 2024-11-24 AfterShip无需API开发连接腾讯云短信,实现自动发送消息通知
- 2024-11-24 融资现罗生门:子弹短信与腾讯 到底谁在躲着谁?
你 发表评论:
欢迎- 最近发表
-
- Win10 TH2正式版官方ESD映像转换ISO镜像方法详解
- 使用iso镜像升级到Windows 10的步骤
- macOS Ventura 13.2 (22D49) Boot ISO 原版可引导镜像
- 安利一个用ISO镜像文件制作引导U盘的的小工具RUFUS
- CentOS 7使用ISO镜像配置本地yum源
- 用于x86平台的安卓9.0 ISO镜像发布下载:通吃I/A/N、完全免费
- AlmaLinux 9.6发布:升级工具、初步支持IBM Power虚拟化技术
- Rufus写入工具简洁介绍与教程(写入模式)
- 新硬件也能安装使用了,Edge版Linux Mint 21.3镜像发布
- 开源工程师:Ubuntu应该抛弃32位ISO镜像
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)