用户管理

最近更新时间:2026-01-30 15:35:11

我的收藏

用户类型

用户分为内部用户、外部注册用户、匿名用户:
用户类型
角色
用户数限制
用户信息
注册
登录
内部用户
固定的「默认内部用户角色」
可分配自定义角色
受套餐限制,参考计费文档
系统保存
通过HTTP API新增
参考登录方式
外部注册用户
固定的「默认外部用户」角色
不限用户数
系统保存
通过用户注册
参考登录方式
匿名用户
固定的「默认访客」角色
不限用户数
系统不保存
无需注册
参考匿名登录

获取当前登录的用户

auth 实例请参考 SDK 初始化
您可以使用 auth.currentUser 属性或者 auth.getCurrentUser() 方法来获取当前登录的用户,该方法会返回当前登录用户的User实例。如果用户未登录,则返回 null
import cloudbase from "@cloudbase/js-sdk";

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

// 获取 auth 实例
const auth = app.auth();

// 进行登录后...

// 获取用户信息
const user = auth.currentUser;
// 或者
// const user = await auth.getCurrentUser()

获取用户个人资料

您可以通过 User 对象的各个属性来获取用户的个人资料信息:
const user = auth.currentUser;
let uid, name, gender, created_from;

if (user) {
// 云开发唯一用户 id
uid = user.uid;

// 昵称
name = user.name;

// 性别
gender = user.gender;

// 创建来源
created_from = user.created_from;
}

更新用户个人资料

您可以使用 User.update 方法来更新用户的个人资料信息。例如:
const user = auth.currentUser;

user
.update({
name: "Tony Stark",
gender: "MALE",
})
.then(() => {
// 更新用户资料成功
});

刷新用户资料信息

对于一个多端应用,用户可能在其中某个端上更新过自己的个人资料信息,此时其它端上可能需要刷新信息:
const user = auth.currentUser;

// 刷新用户信息
user.refresh().then(() => {
// 刷新后,获取到的用户信息即为最新的信息
const { username, gender } = user;
});