短信通道——阿里大鱼(java)
综述
注:本文写于2017年6月22日升级之后。
使用阿里大鱼发送短信已经成为一种趋势,因为权威,而且价格也比较适中,被越来越多的公司所采用。在介绍阿里大鱼发送短信之前,首先得拥有阿里云的账号,这个账号可以使用支付宝账号进行登录。笔者是Java程序猿,本篇也只介绍Java的方式,其他方式参考阿里云的帮助文档。
步骤
第一步:注册阿里云账号,获取app access key 和 app access secret。点击个人头像------>管理控制台-------->个人账号名称(一般是手机号)----->accesskeys,进入到Access key 管理界面,在发送短信时需要这两个值。
(图1)
第二步:申请短信签名,短信签名是商户的标识,短信签名会出现在短信内容的开头,例如支付宝的短信签名为”支付宝”,短信开头的内容是【支付宝】。申请短信签名需要审核,而且有个数限制,一般不会超过5个。管理控制台----->展开云计算基础服务----->短信服务------> 短信签名------> 添加短信签名
(图2)
第三步:申请短信模板,阿里大鱼将短信分为三种,验证码,短信通知和推广短信。申请短信模板也需要审核,但是没有个数限制。
第四步:下载SDK及Demo,将aliyun-java-sdk-core-version.jar及aliyun-java-sdk-dysmsapi-version.jar导入到项目中,其中version为版本号。如果是Maven项目,解压文件,搜索pom.properties,将groupId,artifactId,version写入到pom.xml中。
#Generated by Maven #Wed Jun 14 21:12:41 CST 2017 version=1.0.0-SNAPSHOT groupId=com.aliyun artifactId=aliyun-java-sdk-dysmsapi 替换为 <dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-dysmsapi</artifactId><version>1.0.0-SNAPSHOT</version> </dependency>
第五步:编写程序,编写程序分为三部分。
第一部分,获取IAcsClient对象,该对象用来发送请求。创建IAcsClient对象的过程需要app access key 和 secret。
/*** 获取IAcsClient对象* * @return* @throws ClientException*/ private static IAcsClient initClient() throws ClientException {System.setProperty("sun.net.client.defaultConnectTimeout", "10000");System.setProperty("sun.net.client.defaultReadTimeout", "10000");// 初始化ascClient需要的几个参数final String product = "Dysmsapi";// 短信API产品名称final String domain = "dysmsapi.aliyuncs.com";// 短信API产品域名// 秘钥key和secretfinal String appkey = "yourappKey";final String appSecret = "yourappsecret";// 初始化ascClient,暂时不支持多regionIClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", appkey, appSecret);DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);IAcsClient acsClient = new DefaultAcsClient(profile);return acsClient; }
第二部分:根据短信模板,创建SendSmsRequest请求对象。
/*** 获取SMS_72780019短信模板对应的请求* * @return*/ private static SendSmsRequest getSMS_72780019Message() {//组装请求对象SendSmsRequest request = new SendSmsRequest();//必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为20个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式request.setPhoneNumbers("1500000000");//必填:短信签名-可在短信控制台中找到request.setSignName("云通信");//必填:短信模板-可在短信控制台中找到request.setTemplateCode("SMS_1000000");//可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为request.setTemplateParam("{\"name\":\"Tom\", \"code\":\"123\"}");//可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者request.setOutId("yourOutId");}
第三部分:发送短信,获取响应对象,
/*** @param templateCode 短信模板code* @throws ClientException* */ public static void sendMessage(String templateCode) throws ClientException {// 初始化client对象IAcsClient client = initClient();// 短信模板请求对象SendSmsRequest request = null;// 根据短信模板code来获取不同的短信模板请求对象switch(templateCode){case "SMS_72780019": request = getSMS_72780019Message();break;}// 发送短信SendSmsResponse response = client.getAcsResponse(request);// 打印短信的消息System.out.println("_____________发送SMS_72780019短信收到的响应信息_______________");System.out.println("请求的ID:" + response.getRequestId());System.out.println("请求的状态码:" + response.getCode());System.out.println("请求的状态码描述:" + response.getMessage());System.out.println("请求的回执ID:" + response.getBizId()); }
点击短信服务统计,可以看到每天发送多少条短信,如果发送短信失败,可以点击”失败详情”查看原因,也可以根据请求的状态码,去查阅错误码列表。
至此本篇内容结束。
短信通道——阿里大鱼(java)相关推荐
- php短信接口(阿里大鱼)
接口文件在阿里大鱼官方手册内有 public function alidayu($mobile){ include VENDOR_DIR ."/alidayu/TopSdk.php" ...
- php阿里大鱼短信接口,阿里大鱼短信发送接口demo
[实例简介]这是一个阿里大于的短信接口示例demo,修改代码中的 appkey 和 secretkey即可 发短信验证码 [实例截图] [核心代码] include "AlibabaAliq ...
- Java实现短信验证码(阿里云短信服务)
前言: 很多时候我们做的项目都需要上图这样的验证码来帮助我们完成更好的功能,比如:什么登录注册,忘记密码需要发送手机验证码之类的啊...下面分享我今天通过阿里云短信服务实现的短信验证码,操作都很简单, ...
- JAVA发送手机短信,httpclient短信发送接口示例(java)
httpclient短信发送接口示例(java),可用于直接用电脑发送短信,可根据实际情况,与联通移动公司洽谈接口,完成网上发送短信功能,如需jar包,可向联通移动公司项目部沟通. package c ...
- 商用短链平台_第8章_ 账号微服务注册模块+短信验证码+阿里云OSS开发实战
商用短链平台_第8章_ 账号微服务注册模块+短信验证码+阿里云OSS开发实战 文章目录 商用短链平台_第8章_ 账号微服务注册模块+短信验证码+阿里云OSS开发实战 第八章 账号微服务注册模块+短信验 ...
- 如何选择适合的短信通道
互联网在我们生活中普及,各种营销方式都有,其中,短信已经成为大家普遍了解的一种常规手段.短信作为沟通客户的重要工具,在各行各业都在广泛应用.放眼整个互联网,提供短信通道与接口的服务商层出不穷,而其产品 ...
- 基于混合密码体制的端到端短信通讯系统(Java实现+AES+RSA+json)
基于混合密码体制的端到端短信通讯系统(Java实现+AES+RSA+json) 随着移动通信技术及相关领域服务的快速发展,短信内容常常涉及用户隐私和信息安全.用户使用短信传输一些重要的私人信息,如:手 ...
- 阿里大鱼短信平台使用(Java)
找回密码短信验证 项目中修改密码需要手机短信验证,由于阿里大鱼发短信速度快,稳定,因此决定使用阿里大鱼.废话不多说,步骤如下: 1.首先登录阿里大鱼官网,注册成为开发者.(http://www.ali ...
- 阿里云短信验证码服务使用(java ssm为例)
注册并登陆阿里云账号 不知道到网址的点击此处 添加模板 填写签名,选择适用场景为验证码 ps:签名为验证码签名的标签,[阿里云]验证号码为000000,那个阿里云就是签名(适用场景为通用需要填写企业信 ...
- ThinkPHP5.1接入阿里云短信服务(原大鱼最新版)指导
♘背景 随着科技发展的推动,曾经充满温馨问候与回忆的短信业务,如今绝大多数局限于 验证码发送.诈骗/骚扰信息.业务推送 的使用 而作为一名IT搬砖的码农,对于第三方服务的接入也是必须掌握的技能,此处介 ...
最新文章
- 视频录制,压缩实现源码
- 机器学习编程语言_我应该选择哪种编程语言? 我应该专注于前端吗? 后端? 机器学习?...
- jQuery元素内容操作的方法有多少种?
- java切面类整合_SpringBoot2.x【五】整合AOP切面编程
- 【数字孪生】关于数字孪生的冷思考及其背后的建模和仿真技术
- IDEA 配置 Docker
- 【Java源码分析】HashMap源码分析
- sysbench性能压测以及mysql性能压测
- 吴恩达机器学习笔记:(六)Octave使用
- js实现线路流动_52期:实现redux与reactredux
- (十八)深入浅出TCPIP之HTTP和HTTPS
- 小朋友(洛谷-P3852)
- 【8.12测试】辉夜的见面礼
- 解决Ionic的ion-slide-box 2条数据渲染问题
- 计算机教室英语怎么读音,大家一起学发音-沪江英语
- Gyroscope in smartphone 手机中的陀螺仪传感器
- 用户画像之ID-Mapping
- CSS设置字体为微软雅黑 且 解决用户设备上没有该字体的问题
- 什么是计算机内存?它的用途是什么?
- Excel 删除一行的快捷键
热门文章
- linux双硬盘硬件raid,双硬盘组建Raid0磁盘阵列图文教程
- 《深入理解RPC框架原理与实现 华钟明》读书笔记
- blender 建模记录
- Open3d学习计划——11(使用NumPy)
- 用费曼学习法学习费曼学习法-读《世界上最好的学习法:费曼学习法》收获
- Circular RNA的产生机制、功能及RNA-seq数据鉴定方法
- 2022强网杯web方向wp
- java 中deff方法_怎么解决java.lang.NoclassDeffFoundError错误【转载】
- 句子迷 2015_01_10
- 带有Lowe’s算法的SURF特征提取和匹配