通过nodejs发短信,想想就很激动,这样我就可以给网站加个会员注册短信验证功能、会员登录短信验证功能、网站异常自定义发短信功能。下面我将介绍如何通过阿里大鱼提供的api接口完成这些功能。
编码开始
- 安装阿里大鱼nodejs sdk npm包
npm install alidayu-node
- 发短信,这里的
App Key
和App Secret
获取方法继续往下看
var App = require('alidayu-node');
var app = new App('App Key', 'App Secret');
app.smsSend({
sms_free_sign_name: '注册验证', //短信签名,参考这里 http://www.alidayu.com/admin/service/sign
sms_param: JSON.stringify({"code": "123456", "product": "测试网站"}),//短信变量,对应短信模板里面的变量
rec_num: '13599999999', //接收短信的手机号
sms_template_code: 'SMS_640004' //短信模板,参考这里 http://www.alidayu.com/admin/service/tpl
});
上面代码运行后,手机将会收到一条类似这样的短信:
[注册验证]验证码123456,您正在注册成为测试网站用户,感谢您的支持!
更多api这里就不一一介绍了,大家可以看 alidayu-node 的介绍,参数详解可参考 阿里大鱼api文档
附:如何获取App Key和App Secret
登录阿里大鱼
打开 阿里大鱼网站 ,点击入驻, 用淘宝账号登录
阿里大鱼 是阿里巴巴旗下的通信能力平台,提供发短信、语音通知等开放API。
创建应用
创建应用链接 或者通过 帮助文档 。创建成功后可以在应用列表看到刚创建的应用
点击 AppKey 可以看到App Key
和 App Secret
感觉到了你的激动,仅此= =
感觉到了你的激动,仅此= = 😁
感觉到了你的激动,仅此= =
免费的吗?
@JerroldLee 现在有送60元代金券,绝对够玩儿 哈哈
@DevinXian 哈哈哈
@wengqianshan 签名不对 我想知道这个模块里有自动签名吗
@wengqianshan 看代码里进行了md5的自动签名为何不对呢?你没遇到这种问题吗?
感觉到了你的激动,仅此= =
@TigrisYu 我上面的例子你只改app key app secret 和手机号,其他别改试试呢,我windows和Mac都试过可以的
好东西,新项目正好用上了 自豪地采用 CNodeJS ionic
感觉到了你的激动,仅此= = 😁
感觉到了你的激动.
留一个
有空试试这个平台 自豪地采用 CNodeJS ionic
一条5分钱,60块钱可以发1200条了~够玩了。
sms_param: {“code”: “123456”, “product”: “测试网站”}, //短信变量,对应短信模板里面的变量 不对
应该是sms_param : JSON.stringify({“code”: “123456”, “product”: “测试网站”}), //短信变量,对应短信模板里面的变量
留一个
感觉价格很便宜
@xiongchen2012 哎呀,真的,写错了 多谢多谢
不错,正好需要 自豪地采用 CNodeJS ionic
感觉老贵了
@wengqianshan 可以了呢 这个不错原来都是用云信的这个更好
@TigrisYu 吼吼
多了,确实有点贵。。。
感觉到了你的激动,仅此= =
不错
三分六好贵啊
额,看来是你太激动了,60元的抵用券,只有一个月的有效期,—……—
原来有node sdk啊 自己生成了sign
err: { error_response: { code: 15, msg: 'Remote service error', sub_code: 'isv.SMS_SIGNATURE_ILLEGAL', sub_msg: '短信签名不合法', request_id: '11ied6vwjmn1x' } }
短信签名不合法可能是什么原因?
大鱼我也挺想用,但是看着申请太麻烦了,我用的小作坊的短信服务,啥资料不用就可以发
@JerroldLee 短信签名这个参数sms_free_sign_name只能是阿里大鱼官网列出的,如果新增需要申请才可以,你试试就用我上面的例子不要改短信签名
@captainblue2013 大公司的产品用着更安全嘛
我想问下,阿里大鱼很多接口都可用这个sdk吗?比如订阅他们消息
mark 自豪地采用 CNodeJS ionic
@wengqianshan 直接用你上面的发出去没有任何回应,回调里地error和response都是undefine
@wengqianshan 提示“短信模板不合法”
@JerroldLee 没按要求写。模板需要申请的。
@wengqianshan 方便留个qq吗?请教下
通过测试发现很不稳定:7/10不成功( ⊙ o ⊙ )啊!
{ error_response: { code: 15, msg: 'Remote service error', sub_code: 'isv.BUSINESS_LIMIT_CONTROL', sub_msg: '触发业务流控', request_id: '10cgudxsi0nsn' } }
@JerroldLee 奇怪啊,SMS_640004 是官方模板,不应该出错的, 我QQ 2154276156
@kylezhang 看了下官方文档是这么说的
短信验证码,使用同一个签名,对同一个手机号码发送短信验证码,允许每分钟1条,累计每小时7条。 短信通知,使用同一签名、同一模板,对同一手机号发送短信通知,允许每天50条(自然日)
https://api.alidayu.com/doc2/apiDetail?spm=a3142.7629140.1.19.SmdYoA&apiId=25450
@wengqianshan 看到了,难怪!