微信小程序(云函数) SDK 开发文档
本SDK是用于使用微信小程序云函数开发的,提供了通用的短信发送方法send,和支持短信验证码管理的方法sendCode,可以实现验证码的生成、存储、比对、有效期管理等,总之,您不需要单独在实现这样的功能,我们都为您做好了。
1.安装
下载后的SDK在cloudfunctions文件夹下会包含zhenzisms文件夹,您直接把这个文件夹拷到您的项目中即可。
miniprogram文件夹下包含使用示例,您可以参考这个完成开发。
注: 使用云函数开发无需配置域名的
2.申请账号,获取appId、appSecret
免费注册地址: http://sms_developer.zhenzikj.com/zhenzisms_user/register.html
使用注册账号登录用户中心,在"我的应用"-> "详情"中可以查询AppId、AppSecret
AppId、AppSecret是用于开发者使用账号和秘钥, 以下的所有api中都需要用到
3.修改SDK中的AppId、AppSecret
打开SDK中云函数的index.js文件,填写appId、appSecret
注意:修改后别忘记重新上传云函数
4.发送短信
apiUrl为请求地址,个人开发者使用https://sms_developer.zhenzikj.com,企业开发者使用https://sms.zhenzikj.com
send方法用于单条发送短信
返回结果是json格式的字符串, code: 发送状态,0为成功。非0为发送失败,可从data中查看错误信息
注: 测试发送短信内容不要使用"你好"或"12132"全数字形式,这种短信内容没有具体的意义,可能会被运营商屏蔽
请求参数
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
templateId | 是 | string | 短信模板ID,登录用户中心,在"短信管理->短信模板"中创建,并查看 |
templateParams | 否 | string[] | 短信模板参数 |
number | 是 | string | 接收者手机号码 |
messageId | 否 | string | messageId即该条短信的唯一标识, 不能重复 |
clientIp | 否 | string | 客户端IP,需要与应用设置中的”客户IP限额“配合使用,主要防止用户恶意刷短信 |
错误代码表
错误码 | 原因 | 解决方案 |
---|---|---|
100 | 参数格式错误 | 检查请求参数是否为空, 或手机号码格式错误 |
101 | 短信内容超过1000字 | 短信内容过长,请筛检或分多次发送 |
105 | appId错误或应用不存在 | 请联系工作人员申请应用或检查appId是否输入错误 |
106 | 应用被禁止 | 请联系工作人员查看原因 |
107 | ip错误 | 如果设置了ip白名单,系统会检查请求服务器的ip地址,已确定是否为安全的来源访问 |
108 | 短信余额不足 | 需要到用户中心进行充值 |
109 | 今日发送超过限额 | 如果设置了日发送数量,则每个接收号码不得超过这个数量 |
110 | 应用秘钥(AppSecret)错误 | 检查AppSecret是否输入错误,或是否已在用户中心进行了秘钥重置 |
111 | 账号不存在 | 请联系工作人员申请账号 |
117 | templateId错误,或者模板未审核 | 错误说明 |
1000 | 系统位置错误 | 请联系工作人员或技术人员检查原因 |
5.发送短信(验证码)
如何管理短信验证码?
首先,您需要在云开发控制台中创建名称为sms-record的集合,用于存放验证码信息的,这个集合您无需维护。如下图:
其次,修改集合的权限,如下图:
使用方法:
5.校验验证码
此方法validateCode需要和方法createCode配合使用,用于校验用户提交上来的验证码和系统生成的是否一致
apiUrl为请求地址,个人开发者使用https://sms_developer.zhenzikj.com,企业开发者使用https://sms.zhenzikj.com
参数$url:方法名称,固定不变的
参数number:发送短信的手机号码
参数code:用户输入的验证码
返回结果是json对象,其中code项是错误代码,data项是错误描述。code说明 success: 校验成功,empty:未调用sendCode方法生成验证码, code_expired:验证码已过期,过期时间是通过sendCode方法的参数seconds控制,code_error:验证码错误,number_error:手机号错误
6.查看余额
通过该接口可查看当前剩余的短信条数
返回结果是json格式的字符串, code: 查询状态,0为成功,data为剩余短信条数。非0为查询失败,可从data中查看错误信息
错误代码表
错误码 | 原因 | 解决方案 |
---|---|---|
100 | 参数格式错误 | 检查请求参数是否为空 |
105 | appId错误或应用不存在 | 请联系工作人员申请应用或检查appId是否输入错误 |
106 | 应用被禁止 | 请联系工作人员查看原因 |
107 | ip错误 | 如果设置了ip白名单,系统会检查请求服务器的ip地址,已确定是否为安全的来源访问 |
110 | 应用秘钥(AppSecret)错误 | 检查AppSecret是否输入错误,或是否已在用户中心进行了秘钥重置 |
1000 | 系统位置错误 | 请联系工作人员或技术人员检查原因 |
7.查询短信
接口描述
根据messageId查询已发送短信
请求参数
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
messageId | 是 | string | 信息id,对应发送短信接口的messageId字段 |
返回结果
返回结果是json格式的字符串, code: 查询状态,0为成功。非0为失败,可从data中查看错误信息
{ "code":0, "data":{} }
返回结果是json格式的字符串, code: 查询状态,0为成功,data短信信息的json字符串