有奖捉虫:云通信与企业服务文档专题,速来> HOT
使用短信验证码登录,您可以让用户使用自己的手机号,结合短信验证码或密码注册、登录 CloudBase,并且还可以更新或者解绑登录使用的手机号。

使用限制及费用

新开通的按量计费环境,或者 2021 年 4 月 9 日前开通的按量计费环境,享有首月 100 条的免费额度。
超出免费额度的需求,开发者可以前往云开发控制台 购买资源包
短信下发存在频率限制:
同一号码 30 秒内最多发送 1 条。
同一手机号一个自然日最多发送 100 条。

开通短信验证码登录

进入 云开发 CloudBase 控制台,在 登录授权 设置页面中,开启短信验证码登录。




登录流程

步骤1:初始化 SDK

import cloudbase from "@cloudbase/js-sdk";

const app = cloudbase.init({
env: "your-env-id"
});


步骤2:使用手机号注册账号

首先需要用户填入自己的手机号,然后调用 SDK 的发送短信验证码接口:
app
.auth()
.sendPhoneCode(phoneNumber)
.then(() => {
// 发送短信验证码
});

调用发送短信接口后,手机将会收到云开发的短信验证码。用户填入短信验证码,以及自定义密码后,调用注册账号接口:
app
.auth()
.signUpWithPhoneCode(phoneNumber, phoneCode, password)
.then(() => {
// 手机短信注册账号
});

注意
密码长度不小于 8 位,不大于 32 位,需要包含字母和数字。

步骤3:使用手机号加密码或手机号加短信验证码登录

app
.auth()
.signInWithPhoneCodeOrPassword({
phoneNumber,
phoneCode, // 非必填,验证码和密码至少二选一
password // 非必填,验证码和密码至少二选一
})
.then((loginState) => {
// 登录成功
});