在 Node.js 中指定依附元件

允許函式使用外部 Node.js 模組以及本機資料。Node.js 中的依附元件由 npm 代管,並以稱為 package.json 的中繼資料檔案表示。

若要為函式指定依附元件,請將其添加到 package.json 文件中。如果要透過 gcloud 指令列工具進行部署,您也可以預先安裝依附元件,並將其與函式一起部署。根據預設,node_modules 資料夾會新增至 .gcloudignore,且不會做為部署的一部分上傳。若要部署預先安裝的依附元件,請在部署函式之前從 .gcloudignore 檔案中刪除 node_modules/

在您部署函式後,Cloud Functions 會安裝使用 npm install 指令在 package.json 檔案中宣告的依附元件。在 Node.js 8 執行階段中,若存在 yarn.lock 檔案,則會改用 yarn install 指令。

Node.js 執行階段包含執行環境中的多個系統套件。如果您的函式使用的依附元件,需要並未列出的系統套件,您可以要求套件

在這個範例中,依附元件會列在 package.json 檔案中:

{
  "dependencies": {
    "uuid": "^3.0.1"
  }
}

然後,依附元件會匯入函式中:

const uuid = require('uuid');

// Return a newly generated UUID in the HTTP response.
exports.getUuid = (req, res) => {
  res.send(uuid.v4());
};

使用 npm 安裝 Node.js 模組

安裝 Node.js 模組最簡單的方法就是使用包含 Cloud 函式之資料夾中的 npm install 指令。例如,下列指令可新增 uuid 模組:

npm install uuid

這項操作結合了兩個步驟:

  1. 它會將最新版本的模組標示為 package.json 檔案中的依附元件。這非常重要:Cloud Functions 只會安裝 package.json 檔案中宣告的模組。
  2. 它會將模組下載到 node_modules 目錄。這樣可讓您在本機開發時使用這個模組。

如果您的電腦上沒有安裝 npm,請取得 npm

載入 Node.js 模組

使用 Node.js require() 函式以載入任何您已安裝的 Node.js 模組。您也可以使用 require() 函式來匯入您與函式一起匯入的本機檔案。

使用私人模組

如要使用私人 npm 模組,您必須為函式目錄之 .npmrc 檔案中的 npm 登錄檔提供憑證 (驗證憑證)。npm 文件說明如何建立自訂唯讀存取憑證。我們不建議使用在主目錄中建立的 .npmrc 檔案,因為它包含了讀取/寫入憑證。部署期間不需要寫入權限,因此可能會帶來安全風險。

如果您未使用私人存放區,請不要包含 .npmrc 檔案,因為它可能會增加函式的部署時間。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Functions Documentation