學會如何在Node.js程序中讀取和使用環境變數。
環境變數非常有用,因為我們可以避免在代碼中輸入API密鑰和其他敏感數據,並且將其錯誤地提交到GitHub中。
現代部署平台如Vercel和Netlify(以及其他平台)都有方法讓我們通過它們的界面添加環境變數。
Node.js的process
核心模塊提供了env
屬性,該屬性包含了在啟動進程時設置的所有環境變數。
下面是一個示例,訪問了NODE_ENV環境變數,該變數默認設置為development
。
注意:
process
不需要“require”,它會自動可用
process.env.NODE\_ENV // "development"
將其設置為“production”之前,運行腳本將告訴Node這是一個生產環境。
同樣,您可以訪問所設置的任何自定義環境變數。
這裡為API_KEY和API_SECRET設置了2個變量。
API\_KEY=123123 API\_SECRET=456456 node app.js
我們可以通過以下方式在Node.js中獲取它們。
process.env.API\_KEY // "123123"
process.env.API\_SECRET // "456456"
您可以將環境變數寫入.env
文件(應將其添加到.gitignore
中以防止提交到GitHub),然後運行以下命令。
npm install dotenv
在您的主要Node文件的開頭,添加以下代碼。
require('dotenv').config()
通過這種方式,您可以避免在node
命令之前在命令行中列出環境變數,這些變數將自動被應用程序使用。
注意:某些工具,例如Next.js,會自動將在
.env
中定義的環境變數提供給程序,而不需要使用dotenv
。