Node.js 8 執行階段

要瞭解如何準備本機電腦的 Node.js 開發環境,請參閱「設定 Node.js 開發環境」一文。

如要開始在 Cloud Run functions 使用 Node.js,請參閱「快速入門導覽課程」。

選取執行階段

您可以在部署期間,針對函式選取 Node.js 8 執行階段。

gcloud

如果使用 Google Cloud CLI,則可透過 --runtime 參數來指定執行階段,例如:

gcloud functions deploy NAME --no-gen2 --runtime nodejs8 --trigger-http

如要瞭解部署時可指定的更多引數,請參閱使用 gcloud 工具部署一文。

控制台

如果使用 Google Cloud 控制台,可在建立及部署函式時選取執行階段。

  1. 前往 Google Cloud 控制台的「Cloud Run functions Overview」(Cloud Run functions 總覽) 頁面。

    前往「Cloud Run functions Overview」(Cloud Run functions 總覽) 頁面

    請確保選取的是已啟用 Cloud Run functions 的專案。

  2. 按一下「Create Function」(建立函式)。

  3. 選取「執行階段」底下的 [Node.js 8]。

執行環境

執行環境包括執行階段、作業系統、套件以及叫用函式的程式庫。

Node.js 10 執行階段使用的執行環境,是以 Ubuntu 18.04 搭配 Node.js 10.15.3 版為基礎,詳情請參閱「Cloud Run functions 執行環境」一文。

原始碼結構

為使 Cloud Run functions 能夠找到您函式的定義,每個執行階段都對原始碼有一定的結構要求。詳情請參閱「編寫 Cloud Run functions」。

指定依附元件

若要指定函式的依附元件,將其列入 package.json 檔案即可。詳情請參閱「在 Node.js 指定依附元件」。

Async/await

Node.js 8.x 是第一個支援 async 和 await 關鍵字的 Node.js LTS 版本。

使用中介軟體處理 HTTP 要求

Node.js HTTP Cloud Run functions 提供與 ExpressJS 相容的 request 和 response 物件,可簡化耗時的 HTTP 要求。Cloud Run functions 會自動讀取要求主體,因此不論內容類型為何,您一律都會接收要求主體,這表示在執行程式碼時,應將 HTTP 要求視為已完全讀取。使用 ExpressJS 應用程式的巢狀架構時,請務必留意這項限制,某些中介軟體會預期要求主體保持未讀取狀態,這類軟體就可能無法正常運作。