如何從 Node.js 讀取環境變數

Node.js 的 process 核心模組提供了 env 屬性,其中包含了在啟動進程時設置的所有環境變數。

下面的程式碼運行 app.js 並設置了 USER_IDUSER_KEY

USER_ID=239482 USER_KEY=foobar node app.js

這將傳遞使用者 USER_ID239482,以及 USER_KEYfoobar。這適用於測試,但是在生產環境中,您可能會配置一些 bash 腳本來導出變量。

注意:process 不需要 "require",它會自動可用。

這裡有一個示例,可以訪問我們在上面代碼中設置的 USER_IDUSER_KEY 環境變量。

process.env.USER_ID; // "239482"
process.env.USER_KEY; // "foobar"

以相同的方式,您可以存取您設定的任何自定義環境變數。

Node.js 20 引入了對 實驗性 .env 檔案的支援

現在,您可以在執行 Node.js 應用程式時使用 --env-file 標誌來指定一個環境檔案。以下是一個 .env 檔案的範例以及如何使用 process.env 存取其變數。

# .env file
PORT=3000

在您的 js 檔案中

process.env.PORT; // "3000"

使用在 .env 檔案中設定的環境變數來執行 app.js 檔案。

node --env-file=.env app.js

此命令從 .env 檔案中載入所有環境變數,使其可供應用程式在 process.env 中使用。

此外,您可以傳遞多個 --env-file 參數。後續檔案將覆蓋之前檔案中定義的預設變數。

node --env-file=.env --env-file=.development.env app.js

注意:如果在環境和檔案中定義了相同的變數,則環境中的值優先。

閱讀時間
2 分鐘閱讀
貢獻
編輯此頁面