# 云开发之发送短信验证码
* [ ] 如何设计短信验证码的逻辑
+ **短信通道:** 用来发送短信的账户
+ **短信签名:** 用来识别发信人的昵称
+ **短信模板:** 用来设定短信内容的模板

* [ ] 如何实现发送短信验证码
+ 使用腾讯云短信 Node.js SDK
+ 安装依赖
`npm i qcloudsms_js`
* [ ] 使用方法
+ 前端代码
```html
<button bindtap="sendSms">发送短信</button>
```
+ js代码
```javascript
sendSms:function(){
wx.cloud.callFunction({
name:'sendSms',
data:{
"code":123456
}
}).then(console.log)
},
```
+ 云函数代码
```javascript
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
var QcloudSms = require('qcloudsms_js')
// 云函数入口函数
exports.main = async (event, context) => {
let code = event.code
var appid = ''
var appKey = ''
var phone = '18782509422'
var templateId = 12345
var smsSign = 'CCDD'
var qcloudsms = QcloudSms(appid,appKey)
var sender = qcloudsms.SmsSingleSender()
sender.senderWithParam(
86,phone,templateId,\[code\],smsSign,'','',console.log
)
return {"msg":"ok"}
}
```
+ 上述签名等信息可以去腾讯云管理找到
[https://cloud.tencent.com/](https://cloud.tencent.com/)