Node.js: 使用 dotenv 套件
本文件是處理機密資訊指南的一部分。請在此處查看完整指南:如何使用 Node.js 處理機密資訊。
👋 歡迎來到 Stackhero 文檔!
Stackhero 提供即用型的 Node.js 雲端 解決方案,帶來多項優勢,包括:
- 只需一個簡單的
git push,即可在幾秒鐘內 部署您的應用程式。- 使用您自己的域名,並享受 HTTPS 證書的自動配置以增強安全性。
- 享受自動備份、一鍵更新,以及簡單、透明且可預測的定價,讓您高枕無憂。
- 憑藉專用的私人 VM,獲得最佳的性能和強大的安全性。
節省時間並簡化您的生活:只需 5 分鐘即可嘗試 Stackhero 的 Node.js 雲端託管 解決方案!
在實際專案中,您通常需要管理多個機密資訊。例如,連接資料庫時,可能需要主機名稱、使用者名稱和密碼。
管理單一機密資訊很簡單,但如果要同時處理多個,啟動指令就會變得很複雜。例如:
POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com POSTGRESQL_USER=admin POSTGRESQL_PASSWORD=myPassword node app.js
這樣很快就會變得難以閱讀與維護。在正式環境中,您可能還需要更多變數,這種做法就不太實用。
這時候,dotenv 套件就能派上用場。
使用 dotenv,您可以將機密資訊存放在一個獨立的 .env 檔案中。
首先,請安裝 dotenv 套件:
npm install dotenv
接著,建立一個 .env 檔案來存放您的變數:
POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com
POSTGRESQL_USER=admin
POSTGRESQL_PASSWORD=myPassword
為了保護您的機密資訊,請確保 .env 檔案沒有被加入到 Git 儲存庫。您可以將它加入 .gitignore 檔案:
echo ".env" >> .gitignore
最後,在 app.js 檔案的最上方載入 dotenv 套件:
require("dotenv").config();
這樣設定後,當您在開發機器上用 node app.js 啟動應用程式時,dotenv 會自動讀取 .env 檔案。在正式環境中,則不需要 .env 檔案,環境變數會直接從 Node.js 服務的設定中取得,您可以透過 Stackhero 控制台進行管理。