firebase-functions package

函式

函式 說明
config() 儲存及擷取專案設定資料,例如第三方 API 金鑰或其他設定。您可以如 [環境設定](/docs/functions/config-env)中所述,使用 Firebase CLI 來設定設定值。
optionsToEndpoint(選項)
optionsToTrigger(options)
region(regions) 設定要部署函式的區域。
runWith(runtimeOptions) 設定函式的執行階段選項。

類別

類別 說明
變更 Cloud Functions 介面適用於會變更狀態的事件,例如即時資料庫或 Cloud Firestore onWriteonUpdate 事件。如要進一步瞭解用於建構 Change 物件的格式,請參閱下方說明。
FunctionBuilder

介面

介面 說明
封鎖函式 驗證封鎖觸發條件的函式類型。
CloudFunction 所有非 HTTPS 觸發條件適用的函式類型。您必須從 JavaScript 檔案匯出這個類型,才能定義 Cloud 函式。這是特殊的 JavaScript 函式,使用範本的 Event 物件做為唯一的引數。
DeploymentOptions 用於部署函式期間的函式設定選項。
事件 活動的傳輸格式。
事件背景資訊 事件發生時的情境,
失敗政策 背景函式失敗政策的設定選項。
HttpsFunction HTTPS 觸發條件的函式類型。您必須從 JavaScript 檔案匯出這段程式碼,以便定義 Cloud 函式。
資源 資源是定義資源的標準格式 (google.rpc.context.AttributeContext.Resource)。在 Cloud Functions 中,是觸發函式的資源,例如儲存空間值區。
可執行 Runnable 的 run 方法可直接叫用使用者定義的函式,適用於單元測試。
執行階段選項 適用於執行階段的函式設定選項。
時間表 已排程函式的設定選項。
Schedule 重試 Config 排程器重試選項。僅適用於排定的函式。

命名空間

命名空間 說明
Analytics
驗證
資料庫
Firestore
https
記錄程式
參數
發布/訂閱
remoteConfig
儲存空間
工作
testLab

變數

變數 說明
應用程式
DEFAULT_FAILURE_POLICY
INGRESS_SETTINGS_OPTIONS IngressSettings 的可用選項清單。
MAX_NUMBER_USER_LABELS
MAX_TIMEOUT_SECONDS Cloud Functions 逾時上限值。
MIN_TIMEOUT_SECONDS Cloud Functions 逾時最小值。
重新設定值 可將設定重設為平台預設值的特殊設定值。
支援地區 Cloud Functions 支援的所有區域清單。
VALID_MEMORY_OPTIONS Cloud Functions 支援的可用記憶體選項清單。
VPC_EGRESS_SETTINGS_OPTIONS VpcConnectoregressSettings 的可用選項清單。

config()

儲存及擷取專案設定資料,例如第三方 API 金鑰或其他設定。您可以如 [環境設定](/docs/functions/config-env)中所述,使用 Firebase CLI 來設定設定值。

簽名:

export declare function config(): Record<string, any>;

傳回:

Record<string, any> (錄音)

optionsToEndpoint()

簽名:

export declare function optionsToEndpoint(options: DeploymentOptions): ManifestEndpoint;

參數

參數 類型 說明
選項 DeploymentOptions

傳回:

ManifestEndpoint

optionsToTrigger()

簽名:

export declare function optionsToTrigger(options: DeploymentOptions): any;

參數

參數 類型 說明
選項 DeploymentOptions

傳回:

不限

region()

設定要部署函式的區域。

簽名:

export declare function region(...regions: Array<(typeof SUPPORTED_REGIONS)[number] | string | Expression<string> | ResetValue>): FunctionBuilder;

參數

參數 類型 說明
個區域 陣列<(類型 SUPPORTED_REGIONS)[數字] |字串 |運算式<字串>|重設值> 其中一個區域字串。

傳回:

FunctionBuilder

範例 1

functions.region('us-east1')

範例 2

functions.region('us-east1', 'us-central1')

執行指令

設定函式的執行階段選項。

簽名:

export declare function runWith(runtimeOptions: RuntimeOptions): FunctionBuilder;

參數

參數 類型 說明
RuntimeOptions 執行階段選項 含有選用欄位的物件:1.memory:要分配給函式的記憶體量,可能的值包括:「128MB」、「256MB」、「512MB」、「1GB」、「2GB」、「4GB」和「8GB」。2. timeoutSeconds:函式的逾時時間 (以秒為單位),可能值為 0 到 540。3. failurePolicy:函式的失敗政策,其中布林值 true 相當於提供空白的重試物件。4. vpcConnector:相同專案和區域中虛擬私有雲連接器的 ID。5. vpcConnectorEgressSettings:設定 vpcConnector 時,可控管哪些輸出流量會透過 vpcConnector 傳送。6. serviceAccount:函式的特定服務帳戶。7. ingressSettings:函式的輸入設定,用於控制可以呼叫 HTTPS 函式的位置。值不得為空值。

傳回:

FunctionBuilder

應用程式

簽名:

app: {
    setEmulatedAdminApp: typeof setEmulatedAdminApp;
}

DEFAULT_FAILURE_POLICY

簽名:

DEFAULT_FAILURE_POLICY: FailurePolicy

INGRESS_SETTINGS_OPTIONS

IngressSettings 的可用選項清單。

簽名:

INGRESS_SETTINGS_OPTIONS: readonly ["INGRESS_SETTINGS_UNSPECIFIED", "ALLOW_ALL", "ALLOW_INTERNAL_ONLY", "ALLOW_INTERNAL_AND_GCLB"]

MAX_NUMBER_USER_LABELS

簽名:

MAX_NUMBER_USER_LABELS = 58

MAX_TIMEOUT_SECONDS 秒

Cloud Functions 逾時上限值。

簽名:

MAX_TIMEOUT_SECONDS = 540

MIN_TIMEOUT_SECONDS 秒

Cloud Functions 逾時最小值。

簽名:

MIN_TIMEOUT_SECONDS = 0

重設值

可將設定重設為平台預設值的特殊設定值。

簽名:

RESET_VALUE: ResetValue

支援地區

Cloud Functions 支援的所有區域清單。

簽名:

SUPPORTED_REGIONS: readonly ["us-central1", "us-east1", "us-east4", "us-west2", "us-west3", "us-west4", "europe-central2", "europe-west1", "europe-west2", "europe-west3", "europe-west6", "asia-east1", "asia-east2", "asia-northeast1", "asia-northeast2", "asia-northeast3", "asia-south1", "asia-southeast1", "asia-southeast2", "northamerica-northeast1", "southamerica-east1", "australia-southeast1"]

有效 ID_MEMORY_OPTIONS

Cloud Functions 支援的可用記憶體選項清單。

簽名:

VALID_MEMORY_OPTIONS: readonly ["128MB", "256MB", "512MB", "1GB", "2GB", "4GB", "8GB"]

VPC_EGRESS_SETTINGS_OPTIONS

VpcConnectoregressSettings 的可用選項清單。

簽名:

VPC_EGRESS_SETTINGS_OPTIONS: readonly ["VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED", "PRIVATE_RANGES_ONLY", "ALL_TRAFFIC"]