要看你部署機器的介面有沒有提供環境變數的設定
dotenv
通常在開發模式,會搭配這類工具做環境變數的讀取,傳送門
然後只在非正式環境引進 .env
讀取環境變數
或者是可以判斷有沒有檔案做為基準
if (process.env.NODE_ENV !== "production") {
require("dotenv").config()
}
注意:.gitignore
要記得排除 .env
config.json
配置 config.json
檔案來讀取相關設定
const config = require("config.json");
這種方式通常也會在 .gitignore
排除,並且配置一份 config.example.json
來告知使用者該如何配置相關設定
以上只舉兩種方式作為開發時的應用方式,不過因應正式環境的不同
有些環境只有唯獨狀態,不允許你配置檔案進去
唯獨情況下,你可以透過幾種方式啟動
SET DISCORD_TOKEN=1234556 node index.js
(Windows
)DISCORD_TOKEN=1234556 node index.js
(Linux
)
像是 Heroku
這類型的都會有 env
設定頁面可以協助設定機器的環境變數
這樣就不需要透過讀檔案來配置環境變數
還有其他很多方式就不多贅述,主要是想讓你知道,要先看目標環境有什麼樣的方式
才可以依照不同需求來做配置