Firebase App Check Web SDK。
Firebase App Check 不适用于使用 ReCaptchaV3Provider
或 ReCaptchaEnterpriseProvider
的 Node.js 环境,但如果您使用 CustomProvider
并编写自己的证明方法,则可以在 Node.js 中使用。
函数
函数 | 说明 |
---|---|
function(应用, ...) | |
initializeAppCheck(app, options) | 为指定应用激活 App Check。每个应用只能调用一次。 |
function(appCheckInstance, ...) | |
getLimitedUseToken(appCheckInstance) | 请求 Firebase App Check 令牌。仅当您需要向非 Firebase 后端的请求授权时,才应使用此方法。返回限制使用令牌,旨在与受 Replay Protection 保护的非 Firebase 后端端点搭配使用。此方法不会影响 #getAppCheckToken() 方法的令牌生成行为。 |
getToken(appCheckInstance, forceRefresh) | 获取当前的 App Check 令牌。如果 forceRefresh 为 false,此函数会首先检查内存中的有效令牌,然后检查本地持久性 (IndexedDB)。如果未找到或 forceRefresh 为 true,它会向 App Check 端点发出请求,以获取新令牌。该请求会附加到最近的运行中请求(如果有)。 |
onTokenChanged(appCheckInstance, observer) | 注册一个监听器来监听令牌状态的变化。可以为一个或多个 App Check 实例同时注册多个监听器。每当与此 App Check 实例关联的当前令牌发生变化时,监听器都会在界面线程上回调。 |
onTokenChanged(appCheckInstance, onNext, onError, onCompleted) | 注册一个监听器来监听令牌状态的变化。可以为一个或多个 App Check 实例同时注册多个监听器。每当与此 App Check 实例关联的当前令牌发生变化时,监听器都会在界面线程上回调。 |
setTokenAutoRefreshEnabled(appCheckInstance, isTokenAutoRefreshEnabled) | 设置 App Check 是否根据需要自动刷新令牌。 |
类
类 | 说明 |
---|---|
CustomProvider | 自定义提供程序类。 |
ReCaptchaEnterpriseProvider | 可以获取 reCAPTCHA Enterprise 令牌并将其交换为 App Check 令牌的 App Check 提供方。 |
ReCaptchaV3Provider | 可以获取 reCAPTCHA V3 令牌并将其交换为 App Check 令牌的 App Check 提供程序。 |
接口
接口 | 说明 |
---|---|
AppCheck | Firebase App Check 服务界面。 |
AppCheckOptions | App Check 初始化选项。 |
AppCheckToken | 从 App Check 提供程序返回的令牌。 |
AppCheckTokenResult | getToken() 返回的结果。 |
CustomProviderOptions | 创建 CustomProvider 时使用的选项。 |
类型别名
类型别名 | 说明 |
---|---|
AppCheckTokenListener | 每当 App Check 令牌更改时调用的监听器。 |
function(应用, ...)
initializeAppCheck(应用, 选项)
为指定应用激活 App Check。每个应用只能调用一次。
签名:
export declare function initializeAppCheck(app: FirebaseApp | undefined, options: AppCheckOptions): AppCheck;
参数
参数 | 类型 | 说明 |
---|---|---|
应用 | FirebaseApp |未定义 | FirebaseApp(用于为以下各项启用 App Check) |
选项 | AppCheckOptions | App Check 初始化选项 |
返回:
function(appCheckInstance, ...)
getLimitedUseToken(appCheckInstance)
请求 Firebase App Check 令牌。仅当您需要向对非 Firebase 后端的请求授权时,才应使用此方法。
返回与受 重放攻击保护保护的非 Firebase 后端端点配合使用的限定用途令牌。此方法不会影响 #getAppCheckToken() 方法的令牌生成行为。
签名:
export declare function getLimitedUseToken(appCheckInstance: AppCheck): Promise<AppCheckTokenResult>;
参数
参数 | 类型 | 说明 |
---|---|---|
appCheckInstance | AppCheck | App Check 服务实例。 |
返回:
Promise<AppCheckTokenResult>
限定使用令牌。
getToken(appCheckInstance, forceRefresh)
获取当前的 App Check 令牌。如果 forceRefresh
为 false,此函数会首先检查内存中的有效令牌,然后检查本地持久性 (IndexedDB)。如果未找到或 forceRefresh
为 true,它会向 App Check 端点发出请求,以获取新令牌。该请求会附加到最近的运行中请求(如果有)。
签名:
export declare function getToken(appCheckInstance: AppCheck, forceRefresh?: boolean): Promise<AppCheckTokenResult>;
参数
参数 | 类型 | 说明 |
---|---|---|
appCheckInstance | AppCheck | App Check 服务实例。 |
强制刷新 | 布尔值 | 如果为 true,将始终尝试提取新的令牌。如果为 false,将使用缓存的令牌(如果在存储空间中找到)。 |
返回:
Promise<AppCheckTokenResult>
onTokenChanged(appCheckInstance, observer)
注册一个监听器来监听令牌状态的变化。可以为一个或多个 App Check 实例同时注册多个监听器。每当与此 App Check 实例关联的当前令牌发生变化时,监听器都会在界面线程上回调。
签名:
export declare function onTokenChanged(appCheckInstance: AppCheck, observer: PartialObserver<AppCheckTokenResult>): Unsubscribe;
参数
参数 | 类型 | 说明 |
---|---|---|
appCheckInstance | AppCheck | App Check 服务实例。 |
观察者 | PartialObserver<AppCheckTokenResult> | 一个具有 next 、error 和 complete 属性的对象。每当令牌更改时,系统都会使用 AppCheckTokenResult 调用 next 。error 是可选的,在监听器(next 函数)抛出错误时调用该方法。未使用 complete ,因为令牌流不会结束。 |
返回:
用于退订此监听器的函数。
onTokenChanged(appCheckInstance, onNext, onError, onCompleted)
注册一个监听器来监听令牌状态的变化。可以为一个或多个 App Check 实例同时注册多个监听器。每当与此 App Check 实例关联的当前令牌发生变化时,监听器都会在界面线程上回调。
签名:
export declare function onTokenChanged(appCheckInstance: AppCheck, onNext: (tokenResult: AppCheckTokenResult) => void, onError?: (error: Error) => void, onCompletion?: () => void): Unsubscribe;
参数
参数 | 类型 | 说明 |
---|---|---|
appCheckInstance | AppCheck | App Check 服务实例。 |
onNext | (tokenResult: AppCheckTokenResult) =>无效 | 当令牌发生更改时,系统会使用 AppCheckTokenResult 调用此函数。 |
onError | (错误:错误)=>无效 | 可选。在监听器(onNext 函数)抛出错误时调用。 |
onComplete | () =>无效 | 目前未使用,因为令牌流没有结束。 |
返回:
用于退订此监听器的函数。
setTokenAutoRefreshEnabled(appCheckInstance, isTokenAutoRefreshEnabled)
设置 App Check 是否根据需要自动刷新令牌。
签名:
export declare function setTokenAutoRefreshEnabled(appCheckInstance: AppCheck, isTokenAutoRefreshEnabled: boolean): void;
参数
参数 | 类型 | 说明 |
---|---|---|
appCheckInstance | AppCheck | App Check 服务实例。 |
isTokenAutoRefreshEnabled | 布尔值 | 如果为 true,SDK 会根据需要自动刷新 App Check 令牌。这会替换在 initializeAppCheck() 期间设置的任何值。 |
返回:
void
AppCheckTokenListener
每当 App Check 令牌更改时调用的监听器。
签名:
export declare type AppCheckTokenListener = (token: AppCheckTokenResult) => void;