昨天看了一篇用阿里巴巴云给手机发验证码和短信的博文。当时我很感兴趣,因为这个技术很有用,相当于以后做用户注册的功能,可以用来进行短信验证,对平台的短信收费也很低,所以我自己也没花什么钱。现在让我们分享一下我昨天做的过程
首先,登录阿里要大于: http://www.alidayu.com/
如果没有号码,注册一个!可以用淘宝登陆。我相信大多数人不需要注册。你也可以用支付宝和微博账号登录。我用支付宝扫码登录。成功登录后,将显示以下界面。
点击页面的控制台,然后你会跳转到另一个页面。然后你会看到短信服务。只需点击它。我这里就不截图了,然后你就进入下面的界面。
接下来,单击短信签名,然后单击添加短信签名,然后添加它。这是添加后的结果。这需要验证,只有验证后才能使用。
接下来,以同样的方式单击短信模板,然后单击添加短信模板,然后添加您想要写入的信息。下图
其中这个模板CODE(途中红框的那个)很有用,以后自己写的代码中也会用到,短信签名部分同样的“签名名”也会用到代码中。
设置好两者后,可以执行以下操作。
如图所示,选择你的写作语言,点进去,我用的是java,所以以java为例。
点击后,会进入如图所示的界面。现在你要做的就是拿到证书。访问密钥Id和访问密钥集。
接下来,下载sdk,并根据帮助文档将下一个jar包放入您自己的项目中,您可以使用它的API接口,如下所示
在所有的准备工作完成之后,现在你开始编写自己的代码,而不是更改代码,因为都是为你编写的,所以你只需要更改参数,然后编写你想要编写的代码。
首先,这么简单的目录结构,
接下来,在Message.java课上写
package com.action导入com . aliyuncs . DefaultAcscclient;导入com . aliyuncs . iaccclient;import.com . aliyuncs . dysmapi . model . v 20170525 . query send detailsrequest;import.com . aliyuncs . dysmapi . model . v 20170525 . query send details response;import.com . aliyuncs . dysmapi . model . v 20170525 . sendsmsrequest;import.com . aliyuncs . dysmapi . model . v 20170525 . sendsmsresponse;import.com . aliyuncs . exceptions . client exception;import com . aliyuncs . exceptions . ServerException;导入com . aliyuncs . http . method TYPe;import.com . aliyuncs . profile . Defaultprofile;导入com . aliyuncs . profile . IClientProfile;公共类消息{public void message post()引发服务器异常,client exception {//设置超时-系统。setproperty ('sun。net . client . defaultconnecttimeout ',' 10000 ')可以自行调整。system . set property(' sun . net . client . defaultreadtime out ',' 10000 ');//初始化ascClient所需的几个参数:最终String乘积=' Dysmsapi//短信API产品名称(短信产品名称固定,无需修改)Final String Domain=' dysmsapi . aliyuncs.com ';//短信API产品域名(接口地址固定,无需修改)//替换为你的AK Final String AccessKeyID=' AccessKeyID ';//关于您的accessKeyId,请参考本文档中的步骤2最终字符串accesskey ecret=' accesskey ecret ';//对于您的accessKeySecret,请参考本文档第2步//初始化ascClient,暂时不支持多区域(不修改)I client profile=default profile . getprofile(' cn-hung ',accesskeyid,accesskeys ecret);defaultprofile . addendpoint(' cn-hang ',' cn-hang ',产品,域);IAcsClient acsClient=新的DefaultAcsClient(配置文件);//程序集请求对象sendsmsrequest=new sendsmsrequest();//使用post提交request . set method(method type . post);//需要发送:手机号码。支持以逗号分隔的形式进行批量通话,上限为1000个手机号码。与单次通话相比,批量通话在时效性上略有延迟。建议使用单呼叫模式请求。验证码类型短消息的setphonenumbers ('1500000000 ')。//需要:短信签名-request . setsigname('短信签名')可以在短信控制台找到;//需要:短信模板-request.setTemplateCode('模板代码')可以在短信控制台找到;//可以选择:模板中的变量替换JSON字符串。例如,当模板内容为‘亲爱的${name},您的验证码为$[code]’时,这里的值为//友好提醒:如果需要在JSON中带一个新的行字符,请参考标准JSON协议对新行字符的要求。例如,如果短消息内容包含rn,则需要表示为否则,JSON将无法解析服务器请求。settemplatepage(' { ' name ' : ' AAA ', ' code ' : ' 520 ' } ');//可选-上行短信扩展码(扩展码字段控制在7位以下,无特殊需求用户请忽略此字段)//请求。setsmsupextendcode(' 90997 ');//可以选择:outId作为提供给业务端的扩展字段,最后将这个值带回给来电者请求,短信回执消息中的setutid(' yourOutId ');//请求失败。这里将抛出一个ClientException异常。发送短信响应发送短信响应=acsclient。获取ACS响应(请求)。if(sendSmsResponse.getCode()!=null sendsmsresponse。getcode()。equals(' ok '){//请求成功系统。out.println (sendsmsresponse。getcode());System.out.println('请求成功');}}}就这么简单。你可以通过运行这个messagePost方法向指定的手机发送验证码短信。
这些标记的地方需要修改。
其中姓名和代码是传递参数的,比如发送验证码,可以生成一个4位或6位的随机数并赋给代码,然后发送到手机上。
摘要
以上是使用边肖介绍的阿里大禹(大鱼)平台发送手机验证码的过程。希望对大家有帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!如果你觉得这篇文章对你有帮助,请转载,请注明出处,谢谢!