User interface

用户账号。

签名

export interface User extends UserInfo 

扩展UserInfo

属性

属性 类型 说明
emailVerified 布尔值 电子邮件是否已通过 sendEmailVerification()applyActionCode() 进行验证。
is 匿名 布尔值 是否使用 ProviderId.ANONYMOUS 提供方对用户进行身份验证。
元数据 UserMetadata 关于用户创建和登录时间的其他元数据。
providerData UserInfo[] 每个提供方的额外信息,例如 displayName 和个人资料信息。
refreshToken 字符串 用于重新验证用户身份的刷新令牌。请避免直接使用此 ID,建议改用 User.getIdToken() 刷新 ID 令牌。
tenantId 字符串 |null 用户的租户 ID。

方法

方法 说明
delete() 删除用户并将其退出账号。
getIdToken(forceRefresh) 返回用于向 Firebase 服务标识用户的 JSON 网络令牌 (JWT)。
getIdTokenResult(forceRefresh) 返回反序列化 JSON Web 令牌 (JWT),用于向 Firebase 服务标识用户。
reload() 刷新用户(如果已登录)。
toJSON() 返回此对象的可序列化 JSON 表示法。

User.emailVerified

电子邮件是否已通过 sendEmailVerification()applyActionCode() 进行验证。

签名

readonly emailVerified: boolean;

User.is 匿名用户

是否使用 ProviderId.ANONYMOUS 提供方对用户进行身份验证。

签名

readonly isAnonymous: boolean;

User.metadata

关于用户创建和登录时间的其他元数据。

签名

readonly metadata: UserMetadata;

User.providerData

每个提供方的额外信息,例如 displayName 和个人资料信息。

签名

readonly providerData: UserInfo[];

User.refreshToken

用于重新验证用户身份的刷新令牌。请避免直接使用此 ID,建议改用 User.getIdToken() 刷新 ID 令牌。

签名

readonly refreshToken: string;

用户.租户 ID

用户的租户 ID。

这是一个只读属性,表示用于登录用户的租户 ID。如果用户是从父项目登录的,则此字段为 null。

签名

readonly tenantId: string | null;

示例

// Set the tenant ID on Auth instance.
auth.tenantId = 'TENANT_PROJECT_ID';

// All future sign-in request now include tenant ID.
const result = await signInWithEmailAndPassword(auth, email, password);
// result.user.tenantId should be 'TENANT_PROJECT_ID'.

User.delete()

删除用户并将其退出账号。

通过使用 FirebaseServerApp 创建的 Auth 实例登录的任何 User 都不支持此方法。

签名

delete(): Promise<void>;

返回

承诺<void>

User.getIdToken()

返回用于向 Firebase 服务标识用户的 JSON 网络令牌 (JWT)。

如果当前令牌未过期或者在接下来的五分钟内不会过期,则返回当前令牌。否则,此操作将刷新令牌并返回新令牌。

签名

getIdToken(forceRefresh?: boolean): Promise<string>;

参数

参数 类型 说明
强制刷新 布尔值 无论令牌过期情况如何,都强制刷新。

返回

承诺<字符串>

User.getIdTokenResult()

返回反序列化 JSON Web 令牌 (JWT),用于向 Firebase 服务标识用户。

如果当前令牌未过期或者在接下来的五分钟内不会过期,则返回当前令牌。否则,此操作将刷新令牌并返回新令牌。

签名

getIdTokenResult(forceRefresh?: boolean): Promise<IdTokenResult>;

参数

参数 类型 说明
强制刷新 布尔值 无论令牌过期情况如何,都强制刷新。

返回

Promise<IdTokenResult>

User.reload()

刷新用户(如果已登录)。

签名

reload(): Promise<void>;

返回

承诺<void>

User.toJSON()

返回此对象的可序列化 JSON 表示法。

签名

toJSON(): object;

返回

对象

此对象的可序列化 JSON 表示法。