在 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