阿里云短信服务-个人账户测试短信服务
前言
阿里的短信服务分为三块,一是阿里云短信服务,二是云通讯,三是阿里大于,不过后期都会统一到阿里云短信服务平台的,所以这里只需要学习如何使用阿里云短信服务就可以了。
如果是个人开发者,项目呢还没上线,项目中还需要用到短信服务,想熟悉一下短信服务的代码调用,那看这个教程就对了。
一、免费开通短信服务
传送门
注册登录,然后点击免费开通
二、创建AccessKey
这里一定要把AccessKeyId和AccessKeySecret 记录下来!!!
AccessKeyId | AccessKeySecret |
---|---|
xxxxx | xxxxx |
三、创建签名
这里的签名名称建议使用ABC商城,使用其他的审核不容易通过。适用场景选择验证码,不要选择通用!!!因为选择通用要上传一大堆东西,太麻烦。
四、创建模板
建议就和这个一样,变量只支持一个,模板类型一定选“验证码”。否则审核很难通过。
五、编码
发送内容实体类
短信服务中的变量及其值要以json字符串的形式作为参数传入,因为拼接字符串太过麻烦,这里建议使用实体类转json字符串的形式。
/*** 短信内容VO类*/
@Data
public class AliyunSmsVO1 {private String code; // 验证码
}
发送短信工具类
/*** 阿里云短信服务工具类*/
public class AliyunSmsUtils {public AliyunSmsUtils() {super();}//产品名称:云通信短信API产品,开发者无需替换static final String product = "Dysmsapi";//产品域名,开发者无需替换static final String domain = "dysmsapi.aliyuncs.com";// TODO 此处需要替换成开发者自己的AK(在阿里云访问控制台寻找)static final String accessKeyId = "xxxxxx"; // TODO 修改成自己的accessKeyIdstatic final String accessKeySecret = "xxxxxx"; // TODO 修改成自己的accessKeySecretstatic final String signName = "ABC商城";static final String templateCode = "SMS_206548955";/*** 发送短信* @param telephone 发送的手机号码* @param content 发送的内容,json字符串* @return* @throws ClientException*/public static SendSmsResponse sendSms(String telephone,String content) throws ClientException {//可自助调整超时时间System.setProperty("sun.net.client.defaultConnectTimeout", "10000");System.setProperty("sun.net.client.defaultReadTimeout", "10000");//初始化acsClient,暂不支持region化IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);IAcsClient acsClient = new DefaultAcsClient(profile);//组装请求对象-具体描述见控制台-文档部分内容SendSmsRequest request = new SendSmsRequest();//必填:待发送手机号request.setPhoneNumbers(telephone);//必填:短信签名-可在短信控制台中找到request.setSignName(signName); // TODO 修改成自己的签名//必填:短信模板-可在短信控制台中找到request.setTemplateCode(templateCode); // TODO 修改成自己的模板CODE//可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为"{\"code\":\"123456\"}"request.setTemplateParam(content);//可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者request.setOutId("yourOutId");//hint 此处可能会抛出异常,注意catchSendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);if(sendSmsResponse.getCode()!= null && sendSmsResponse.getCode().equals("OK")){System.out.println("短信发送成功!");}else {System.out.println("短信发送失败!");}return sendSmsResponse;}public static void main(String[] args) throws ClientException, InterruptedException {AliyunSmsVO1 aliyunSmsVO1 = new AliyunSmsVO1();aliyunSmsVO1.setCode("11111");String s = JSONObject.toJSONString(aliyunSmsVO1);//发短信SendSmsResponse response =sendSms("xxxxx",s); // TODO 填写你需要测试的手机号码System.out.println("短信接口返回的数据----------------");System.out.println("Code=" + response.getCode());System.out.println("Message=" + response.getMessage());System.out.println("RequestId=" + response.getRequestId());System.out.println("BizId=" + response.getBizId());}
}
阿里云短信服务-个人账户测试短信服务相关推荐
- springMVC+阿里云API = 实现发送手机验证码短信
springMVC+阿里云API = 实现发送手机验证码短信 前段时间vue框架做了一个旅游APP软件,其中在用户登录APP的时候,我不仅提供了用户可以自己手动先去注册账号在进行登陆App.然后我还提 ...
- 【阿里云产品公测】高大上的搜索服务OpenSearch, 你值得拥有!
2019独角兽企业重金招聘Python工程师标准>>> [阿里云产品公测]高大上的搜索服务OpenSearch, 你值得拥有! 作者:阿里云用户trcher 一.前言: 在Open ...
- 阿里云MQTT服务器搭建与测试(全图文,非常详细)
阿里云MQTT服务器搭建与测试 一. MQTT概念 二. 阿里云MQTT服务器搭建 1 阿里云平台注册及认证 2 添加平台 2 创建产品与设备 获取MQTT连接相关信息 三.MQTT.fx测试 1 M ...
- 阿里云各个地域节点速度测试(测试点到阿里云各站点)
阿里云各个地域节点速度测试 http://aliyun.nagekuai.com/ 测试节点 阿里云速度测试提供阿里云ECS云服务器大陆地域节点测速:华北1(青岛).华北2(北京).华北3(张家口). ...
- 阿里巴巴2022届应届生招聘 阿里云存储基础技术 研发测试算法
学弟学妹们好,我们是阿里云存储基础技术团队,正在进行2022届校招. 团队业务核心,团队氛围nice,对于每位实习同学都会配师兄专职辅导. 本次招聘为部门直招,简历直接推给Leader,反应更快速,合 ...
- 阿里云自定义RAM策略之【对象存储服务(OSS)的权限】
阿里云自定义RAM策略之[对象存储服务(OSS)的权限] 如果系统策略无法满足您的需求,您可以通过创建自定义策略实现精细化权限管理. 在网上查阅资料很少有针对OSS的自定义策略说法 场景:给运营人员使 ...
- 阿里云OSS上传下载和短信验证码
(一):首先得在阿里云OSS上开通相关的服务,具体哪里开通及如何操作请参考此链接: https://help.aliyun.com/document_detail/31883.html?spm=517 ...
- 阿里云栖开发者沙龙PHP技术专场-聊聊服务稳定性保障这些事
本文主要带大家了解服务稳定性的重要性和相关策略.策略大概分两部分,第一方面从架构层面介绍保障服务稳定性的常见策略(限流,降级,隔离,超时,重试和集群).第二个方面是从流程方面(code review, ...
- 使用阿里云ACM简化你的Spring Cloud微服务环境配置管理
摘要: 本文我们就如何使用阿里云ACM这样的配置管理产品在Spring Cloud中替代Spring Cloud Config帮助简化环境配置管理做一个简单的示例,帮助你理解基于ACM来简化微服务环境 ...
最新文章
- 5个无聊透顶的 Python 程序
- 计算机中算术逻辑单元负责,算术逻辑单元
- Windows 2012 R2 中 AD DS 部署
- Linux-Android启动之Init进程前传
- 【矩阵乘法】递推(ssl 1532)
- laravel5.5 php7,ubuntu 16.04+nginx+mysql+php7.1+laravel5.5环境
- java builder pattern_Java Builder Pattern建造者模式详解及实例
- winform 填充圆形 锯齿_Qt项目中,三种图形渐变填充方式详细总结
- 做海外市场,如何在Facebook20多亿用户中分一杯羹?
- 心理学家发现脚部动作可表现性格特征
- 编译在arm版本的Valgrind-转
- typeScrip(三) 类
- SSDP:DDoS***的“新宠”
- “什么?中东的土豪给我们 App 充了大钱!”
- 嵌入式Linux开发工具C语言 Makefile的编写
- android 解压zip工具,ZArchiver解压缩工具
- 固态硬盘能不能提高计算机速度,固态硬盘掉速如何解决?几招轻松提升SSD速度方法 (全文)...
- 警告: Category is implementing a method which will also be implemented by its primary class
- 涨姿势 之 Sourcetree 显示头像
- Linux基础, 基础命令, 基于公钥的免密登录