@cloudbase/extension-sms

腾讯云云开发短信登录扩展

Usage no npm install needed!

<script type="module">
  import cloudbaseExtensionSms from 'https://cdn.skypack.dev/@cloudbase/extension-sms';
</script>

README

验证码登录(扩展)

安装

方法1: 使用npm:

npm install --save @cloudbase/extension-sms

方法2: 使用CDN

<script src="//unpkg.com/@cloudbase/extension-sms/built/index.umd.js"></script>

Usage

const extSms = require('@cloudbase/extension-sms')

tcb.init({
    env:'xxx',
});

tcb.registerExtension(extSms)

const res = await tcb.invokeExtension('CloudInfinite',opts)

opts 包含以下属性

|名称|类型| 是否必须| 说明 | |--| -- | -- | -- | | action | String | 是 | 操作类型,支持 Send, Login, Verify | | phone | String | 是 | 电话号码 | | app | Tcb | 是 | tcb实例 | | smsCode | String | 否 | 短信验证码,action 为 LoginVerify 时需要传入 | | customDomain | String | 否 | HTTP触发的自定义域名 |

action目前包含以下类型

  • Send: 发送短信验证码
  • Verify: 校验短信验证码
  • Login: 短信验证码登录

功能说明

发送短信验证码

const app = tcb.init({
    env: '您的环境ID'
});

const opts = {
    action: 'Send',
    app,
    phone: '' // 用户输入的手机号
};

try {
    await tcb.invokeExtension(extSms.name, opts); // 发送短信验证码
    console.log('短信验证码发送成功')
} catch (error) {
    console.log('短信验证码发送失败:', error.message)
}

注意:前往短信服务(SMS),调整短信发送频率配置

校验短信验证码

const app = tcb.init({
    env: '您的环境ID'
});

const opts = {
    action: 'Verify',
    app,
    phone: '', // 用户手机号
    smsCode: '', // 需要校验的验证码
};

try {
    await tcb.invokeExtension(extSms.name, opts); // 校验短信验证码
    console.log('短信验证码校验成功')
} catch (error) {
    console.log('短信验证码校验失败', error.message)
}

短信验证码登录

const app = tcb.init({
    env: '您的环境ID'
});

const opts = {
    action: 'Login',
    app,
    phone: '', // 用户手机号
    smsCode: '', // 接收到的短信验证码
}

try {
    await tcb.invokeExtension(extSms.name, opts); // 正式登录
    console.log('短信验证码登录成功')
} catch (error) {
    console.log('登录失败:', error.message)
}

注意:登录成功后,验证码自动失效。