如何使用榛子获得第一条短信验证码?

在工作中经常会遇到这样的需求:

产品老王:小李啊,我们要支持手机号注册了,能加一个手机输短信验证码直接注册的功能吗,只要半天就可以了吧?

开发小李:。。。

运营田田:小李啊,我们这个活动页面要加个输手机号的框,用户输完手机号后才能领,最好能有个短信验证码,这样就不担心被薅羊毛了,这个能现在马上做好吗?

开发小李:。。。

客户张老板:小李啊,我们要经常给用户发推广短信,你能不能加个可以给好多用户同时发短信的功能,这个我看挺简单的嘛,200块能搞定不啦?

开发小李:。。。

产品老王、运营田田、客户张老板:小李啊,好了噻没?怎么还没有上线?怎么短信收不到啊?你这个内容不对啊?。。。。。。。。。。。啊。。。。。。啊。。。。

开发小李:我选择死亡

虽然随着微信等IM应用的普及,短信已经不是人与人之间联系的第一通道,但是短信作为一种注册方式、一种企业和客户保持联系的渠道,而短信的开放性和低成本,决定了他依然是企业与客户沟通最重要的方式之一。

那么,作为一名开发者、产品、运营,短信是非常常见的功能或推广方式,我们就要仔细了解短信验证码、推广短信的实现方式和常用工具,只有这样,才能迅速缩短开发时间,做到随时复用,尽可能实现零成本开发。

最近为了彻底解决这个问题,我试用了几款比较出名的短信服务商,包括榛子云短信、twillo等,自己做一个记录,也希望能够帮助其他人,减少后来者的选择成本。

首先就说一下国内使用人数比较多,在开发者中口碑比较高的榛子云短信吧。看完这篇文章,就能学会怎么使用短信验证码或者其他短信业务。

申请测试账号

进入官网, http://smsow.zhenzikj.com/, 官网一看就是偏技术性的。榛子云短信不需要注册,直接找工作人员开通测试账号即可,一般只需几分钟。之后就可测试发送短信了,可以使用手工发送,登录http://sms.zhenzikj.com/zhenzisms_user,  也可以使用SDK开发包。


使用网页手工发送

登录http://sms.zhenzikj.com/zhenzisms_user,  进入用户中心


如何使用榛子获得第一条短信验证码?_第1张图片

另外,如果你嫌每次都手工编辑短信内容,可以创建短信模板:


如何使用榛子获得第一条短信验证码?_第2张图片

如何使用模板,可参考:http://smsow.zhenzikj.com/bbs/index.html


使用SDK发送

使用测试账号登录管理后台获取appId、appSecret, 地址:http://sms.zhenzikj.com/zhenzisms_user

如何使用榛子获得第一条短信验证码?_第3张图片


在"我的应用"->"详情"中打开:

如何使用榛子获得第一条短信验证码?_第4张图片

1.安装

下载后的SDK只包含一个jar文件,并且不依赖任何其他jar包或文件,直接导入到工程中即可使用。


1.安装

下载后的SDK只包含一个jar文件,并且不依赖任何其他jar包或文件,直接导入到工程中即可使用。

2.用法

使用事先申请的AppId、AppSecret初始化ZhenziSmsClient:

ZhenziSmsClient client =newZhenziSmsClient(appId, appSecret);

AppId、AppSecret是短信平台分配的

1)发送短信


Stringresult = client.send("15811111111","您的验证码为4534,有效时间为5分钟");


send方法用于单条发送短信

参数1:接收者手机号码,参数2:短信内容

返回结果是json格式的字符串, code: 发送状态,0为成功。非0为发送失败,可从data中查看错误信息

{

    "code":0,

    "data":"发送成功"

}

错误代码表

错误码原因解决方案

100参数格式错误检查请求参数是否为空, 或手机号码格式错误

101短信内容超过1000字短信内容过长,请筛检或分多次发送

105appId错误或应用不存在请联系工作人员申请应用或检查appId是否输入错误

106应用被禁止请联系工作人员查看原因

107ip错误如果设置了ip白名单,系统会检查请求服务器的ip地址,已确定是否为安全的来源访问

108短信余额不足需要到用户中心进行充值

109今日发送超过限额如果设置了日发送数量,则每个接收号码不得超过这个数量

110应用秘钥(AppSecret)错误检查AppSecret是否输入错误,或是否已在用户中心进行了秘钥重置

111账号不存在请联系工作人员申请账号

1000系统位置错误请联系工作人员或技术人员检查原因

你可能感兴趣的:(如何使用榛子获得第一条短信验证码?)