在 Node.js 使用環境變數
接某專案時,在 package.json
看到以下的 Script 不太熟悉,做了筆記。
1 | { |
環境變數
在系統執行期間存在於系統背景的一組變數,隨時可以被新增與更動。系統在執行程式時,可以依據需要去存取環境變數,來得到相關資訊並使用。例如:程式可以透過 TEMP
這個環境變數取得放置暫存檔的位置。
Node.js
如何使用環境變數?
執行 Node.js
後,可以在執行檔內存去 process.env
這個全域物件來取得環境變數的資訊。
為什麼會需要存取環境變數?在部署程式時,有些較機密的資訊不會放在程式內,不然放到 Git 就被看光了。這些東西可能會事先設定在機器系統的環境變數內,再讓 Node.js 寫的程式去讀它。
只有在程式執行期間存在的環境變數
一般情況下,在終端機設定了環境變數,該環境變數就會永久存在直到我們將其移除。有的時候我們只希望環境變數在我們執行某程式時才存在,可以如下寫法:
1 | $ <環境變數 KEY>=<環境變數值> <執行檔> |
這麼一來,該環境變數就只會在執行檔執行該程式時存在,結束後就沒了。
所以最一開始的那段就是,在執行 dev-server.js
這支程式前,先設定一個只有在執行期間存在的環境變數 LATEST_COMMIT
,內容是該專案的最新 Git 版本編號 。
如此一來,我們就可以在該程式內用 process.env.LATEST_COMMIT
取得該專案的最新編號。