快速开始
CloudBase 登录鉴权为您的应用提供完整的 用户身份管理 和 访问控制解决方案。通过内置的多种登录方式和安全机制,帮助您快速构建可靠的用户体系。
版本说明
本文将以 V2 版本进行介绍
1. 安装并初始化
安装 SDK
在您的项目中引入 @cloudBase/js-sdk@2.x
npm install --save @cloudbase/js-sdk
初始化 SDK
import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({
env: "your-env-id"
});
// 获取 auth 实例
const auth = app.auth();
2. 用户注册
目前支持 手机号验证码、邮箱验证码 注册
两种注册方式开发只在 发送验证码 时有所区别,后续校验步骤均一致
打开登录方式
前往 云开发/身份认证 打开 短信验证码登录 或 邮箱验证码登录,如下图所示:
发送验证码
1. 发送手机号验证码
// 1. 发送验证码
// 需要加区号
const phoneNumber = "+86 13800000000";
const verification = await auth.getVerification({
phone_number: phoneNumber,
});
2. 发送邮箱验证码
// 1. 发送邮箱验证码
const email = "test@example.com";
const verification = await auth.getVerification({
email: email,
});
验证并注册
发送验证码,并获取到验证码后续步骤
// 2. 验证码验证
// 假设这里收到用户填写的验证码"000000"
const verificationCode = "000000";
// 验证验证码的正确性
const verificationTokenRes = await auth.verify({
verification_id: verification.verification_id,
verification_code: verificationCode,
});
// 3. 注册
// 如果该用户已经存,则登录
if (verification.is_user) {
await auth.signIn({
username: phoneNumber,
verification_token: verificationTokenRes.verification_token,
});
} else {
// 否则,则注册新用户,注册新用户时,可以设置密码,用户名
// 备注:signUp 成功后,会自动登录
await auth.signUp({
phone_number: phoneNumber,
verification_code: verificationCode,
verification_token: verificationTokenRes.verification_token,
// 可选,设置昵称
name: "手机用户",
// 可选,设置密码
password: "password",
// 可选,设置登录用户名
username: "username",
});
}
注册成功,即可在 云开发/云后台/用户管理「外部注册用户」中看到
3. 账号登录
目前支持 手机号,邮箱,自定义用户名 作为账号进行登录
密码需要手动设置,如果没有设置可以使用验证码登录
在您的项目中需要登录的位置获取到账号密码后,执行如下代码:
const loginState = await auth.signIn({
username: "your username",
password: "your password"
});
4. 登录完成
登录后,即可操作数据库、云函数、操作文件存储
下一步
恭喜!您已经掌握了登录鉴权的基本使用方法。
具体登录方式请参考: