https namespace

函式

函式 說明
onCall(handler) 宣告可讓用戶端使用 Firebase SDK 呼叫的可呼叫方法。
onRequest(handler) 處理 HTTP 要求。

類別

類別 說明
HttpsError 可從處理常式擲回的明確錯誤,將錯誤傳送至呼叫該函式的用戶端。

介面

介面 說明
CallableContext 傳遞至處理常式的 API 中繼資料介面。
要求 以電匯格式表示要求主體的快速要求。

型別別名

類型別名 說明
FunctionsErrorCode Firebase Functions 狀態碼組合。這些代碼與 gRPC 所公開的程式碼相同。

https://

宣告可讓用戶端使用 Firebase SDK 呼叫的可呼叫方法。

簽名:

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

參數

參數 類型 說明
handler (data:任何,結構定義:CallableContext) =>不限 |承諾<任何> 可接收資料和背景資訊並傳回值的方法。

傳回:

HttpsFunction可執行<任何>

https.onRequest()

處理 HTTP 要求。

簽名:

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

參數

參數 類型 說明
handler (要求:Request,resp: express.Response) =>void |承諾<void> 接收要求和回應物件的函式,與 Express 應用程式相同的簽章。

傳回:

HttpsFunction

https.FunctionsErrorCode

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";