https namespace

函数

函数 说明
onCall(handler) 声明一个 Callable 方法,以供客户端使用 Firebase SDK 进行调用。
onRequest(handler) 处理 HTTP 请求。

说明
HttpsError 可以从处理程序抛出的显式错误,以向调用函数的客户端发送错误。

接口

接口 说明
CallableContext 传递给处理程序的 API 元数据的接口。
请求 以传输格式表示请求正文的极速请求。

类型别名

类型别名 说明
FunctionsErrorCode Firebase Functions 状态代码集。这些代码与 gRPC 公开的代码相同。

https.onCall()方法

声明一个 Callable 方法,以供客户端使用 Firebase SDK 进行调用。

签名

export declare function onCall(handler: (data: any, context: CallableContext) => any | Promise<any>): HttpsFunction & Runnable<any>;

参数

参数 类型 说明
handler (数据:任意;上下文:CallableContext)=>任何 |承诺<any> 一个用于获取数据和上下文并返回值的方法。

返回

HttpsFunctionRunnable<任意>

https.onRequest() 中

处理 HTTP 请求。

签名

export declare function onRequest(handler: (req: Request, resp: express.Response) => void | Promise<void>): HttpsFunction;

参数

参数 类型 说明
handler (请求:请求;响应:express.Response)=>无效 |承诺<void> 一个接受请求和响应对象(签名与 Express 应用相同)的函数。

返回

HttpsFunction 部分

https.Functions 错误代码

Firebase Functions 状态代码集。这些代码与 gRPC 公开的代码相同。

可能的值:

  • cancelled:操作已取消(通常是被调用方取消)。

  • unknown:未知错误或来自其他错误网域的错误。

  • invalid-argument:客户端指定的参数无效。请注意,这与 failed-precondition 不同。invalid-argument 表示无论系统状态如何都会有问题的参数(例如无效的字段名称)。

  • deadline-exceeded:截止期限已过,操作还未完成。对于更改系统状态的操作,即使操作已成功完成,也可能会返回此错误。例如,服务器的成功响应可能会延迟足够长的时间以使截止期限过期。

  • not-found:找不到所请求的某些文档。

  • already-exists:我们尝试创建的某个文档已存在。

  • permission-denied:调用方无权执行指定的操作。

  • resource-exhausted:部分资源已用尽,可能是每位用户的配额已用尽,也可能是因为整个文件系统空间不足。

  • failed-precondition:操作被拒绝,因为系统未处于执行操作所需的状态。

  • aborted:操作被取消,通常是由于事务中止等并发问题。

  • out-of-range:尝试执行的操作超出有效范围。

  • unimplemented:操作未实现或不受支持/未启用。

  • internal:内部错误。这意味着底层系统所期望的一些不变量已损坏。如果您看到上述某个错误,则表明某些地方已损坏。

  • unavailable:该服务目前不可用。这很可能是一种暂时情况,可以通过退避重试来纠正。

  • data-loss:数据丢失或损坏且不可恢复。

  • unauthenticated:请求没有相应操作的有效身份验证凭据。

签名

export type FunctionsErrorCode = "ok" | "cancelled" | "unknown" | "invalid-argument" | "deadline-exceeded" | "not-found" | "already-exists" | "permission-denied" | "resource-exhausted" | "failed-precondition" | "aborted" | "out-of-range" | "unimplemented" | "internal" | "unavailable" | "data-loss" | "unauthenticated";