短信验证码登录
使用短信验证码登录,您可以让用户使用自己的手机号,结合短信验证码或密码注册、登录 CloudBase,并且还可以更新或者解绑登录使用的手机号。
使用限制及费用
- 新开通的按量计费环境,或者 2021 年 4 月 9 日前开通的按量计费环境,享有首月 100 条的免费额度;
- 超出免费额度的需求,开发者可以前往云开发控制台 购买资源包;
- 短信下发存在频率限制:
- 同一号码 30 秒内最多发送 1 条;
- 同一手机号一个自然日最多发送 10 条;
开通短信验证码登录
进入 云开发 CloudBase 控制台,在 登录授权 设置页面中,开启短信验证码登录:
登录流程
第 1 步:初始化 SDK
- Web
import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({
env: "your-env-id"
});
第 2 步:使用手机号注册账号
首先需要用户填入自己的手机号,然后调用 SDK 的发送短信验证码接口:
- Web
app
.auth()
.sendPhoneCode(phoneNumber)
.then(() => {
// 发送短信验证码
});
调用发送短信接口后,手机将会收到云开发的短信验证码。用户填入短信验证码,以及自定义密码后,调用注册账号接口:
- Web
app
.auth()
.signUpWithPhoneCode(phoneNumber, phoneCode, password)
.then(() => {
// 手机短信注册账号
});
密码强度要求
密码长度不小于 8 位,不大于 32 位,需要包含字母和数字。
第 3 步:使用手机号 + 密码 or 手机号 + 短信验证码登录 CloudBase
- Web
app
.auth()
.signInWithPhoneCodeOrPassword({
phoneNumber,
phoneCode, // 非必填,验证码和密码至少二选一
password // 非必填,验证码和密码至少二选一
})
.then((loginState) => {
// 登录成功
});