最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在Node.js中使用.env文件管理環(huán)境變量的全過(guò)程

 更新時(shí)間:2025年09月24日 09:06:49   作者:鳩摩智首席音效師  
Node.js 應(yīng)用程序通常依賴于環(huán)境變量來(lái)管理敏感信息或配置設(shè)置,.env 文件已經(jīng)成為一種流行的本地管理這些變量的方法,本文將探討 .env 文件為什么重要,以及如何在 Node.js 應(yīng)用程序中有效的使用它,需要的朋友可以參考下

引言

Node.js 應(yīng)用程序通常依賴于環(huán)境變量來(lái)管理敏感信息或配置設(shè)置。.env 文件已經(jīng)成為一種流行的本地管理這些變量的方法,而無(wú)需在代碼存儲(chǔ)庫(kù)中公開它們。本文將探討 .env 文件為什么重要,以及如何在 Node.js 應(yīng)用程序中有效的使用它。

為什么使用 .env 文件 ?

Security

在源代碼中保留敏感信息 (如 API 密鑰、數(shù)據(jù)庫(kù)憑據(jù)) 可能會(huì)將它們暴露給意想不到的訪問者。將此數(shù)據(jù)分離到特定于環(huán)境的文件中,您可以使用 .gitignore 輕松地將其排除在版本控制之外。

Configurability

隨著應(yīng)用程序的迭代增長(zhǎng),它們可能需要針對(duì)不同環(huán)境 (開發(fā)、測(cè)試、生產(chǎn)) 使用不同配置。使用 .env 文件有助于在配置和代碼之間保持清晰的分離。

Portability

通過(guò)在代碼中引用環(huán)境變量,您可以維護(hù)一個(gè)易于在不同環(huán)境之間移動(dòng)的一致的代碼庫(kù),只需要更新 .env 文件或給定部署的實(shí)際環(huán)境變量。

如何在 Node.js 中使用 .env 文件

1. Creating the .env file

在項(xiàng)目的根目錄中創(chuàng)建一個(gè) .env 文件,環(huán)境變量定義:key = value

DATABASE_URL=mongodb://localhost:27017/mydb
SECRET_KEY=my-secret-key
API_KEY=abcdef123456

2. Ignoring the .env file

為了防止你的 .env 文件提交到存儲(chǔ)庫(kù),將其添加到 .gitignore 文件中。

# .gitignore
node_modules/
.env

3. Reading the .env file in your application

Node.js 應(yīng)用程序訪問 .env 文件中定義的變量,通常會(huì)使用 dotenv 軟件包。

npm install dotenv

在主應(yīng)用程序文件的頂部(通常是 index.js 或 server.js),導(dǎo)入并配置 dotenv

require('dotenv').config();

console.log(process.env.DATABASE_URL); // Outputs: mongodb://localhost:27017/mydb

通過(guò)調(diào)用 dotenv.config(), .env 文件中的所有變量加載到 process.env,它們?cè)谡麄€(gè)應(yīng)用程序中都可以訪問。

4. Using environment variables in the application

既然已經(jīng)加載了環(huán)境變量,就可以在整個(gè)應(yīng)用程序中使用它們了。例如,當(dāng)連接到 MongoDB 實(shí)例時(shí)

const mongoose = require('mongoose');

mongoose.connect(process.env.DATABASE_URL, { useNewUrlParser: true, useUnifiedTopology: true });

或者在配置 API 時(shí)

const apiKey = process.env.API_KEY;

最佳實(shí)踐

Never commit your .env file:

一定要確保 .env 文件被添加到你的 .gitignore 文件中。

Use descriptive variable names

清晰的名稱使團(tuán)隊(duì)成員更容易理解每個(gè)變量的用途。

Provide a .env.example

與其共享 .env 文件,不如創(chuàng)建一個(gè) .env.example 文件,包含所有鍵但不包含值,這可以作為團(tuán)隊(duì)成員或部署的模板。

Use fallbacks

有時(shí),您可能希望在缺少環(huán)境變量的情況下提供一個(gè)默認(rèn)值。

const apiKey = process.env.API_KEY || 'default-api-key';

Don’t over-rely on .env

對(duì)于較大的應(yīng)用程序或微服務(wù)架構(gòu),請(qǐng)考慮使用專用的配置管理系統(tǒng)或服務(wù)。

到此這篇關(guān)于在Node.js中使用.env文件管理環(huán)境變量的全過(guò)程的文章就介紹到這了,更多相關(guān)Node .env文件管理環(huán)境變量?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 安裝nvm實(shí)現(xiàn)切換node

    安裝nvm實(shí)現(xiàn)切換node

    這篇文章主要介紹了安裝nvm實(shí)現(xiàn)切換node的詳細(xì)過(guò)程,本文給大家講解的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • Nodejs中獲取當(dāng)前函數(shù)被調(diào)用的行數(shù)及文件名詳解

    Nodejs中獲取當(dāng)前函數(shù)被調(diào)用的行數(shù)及文件名詳解

    這篇文章主要給大家介紹了關(guān)于Nodejs中獲取當(dāng)前函數(shù)被調(diào)用的行數(shù)及文件名的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • Linux 安裝nodejs環(huán)境及路徑配置詳細(xì)步驟

    Linux 安裝nodejs環(huán)境及路徑配置詳細(xì)步驟

    大家都知道linux安裝nodejs有兩種比較常用的方法,一種解壓即可用的方法操作比較簡(jiǎn)便,另一種方法通過(guò)編譯來(lái)安裝,本文重點(diǎn)給大家講解第一種方法,感興趣的朋友跟隨小編一起看看吧
    2021-11-11
  • node.js實(shí)現(xiàn)pdf與圖片互轉(zhuǎn)代碼示例

    node.js實(shí)現(xiàn)pdf與圖片互轉(zhuǎn)代碼示例

    因工作需求,記錄一次如何在Node中pdf與圖片互轉(zhuǎn)各種操作,這篇文章主要給大家介紹了關(guān)于node.js實(shí)現(xiàn)pdf與圖片互轉(zhuǎn)的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-04-04
  • 關(guān)于Node.js中Buffer的一些你可能不知道的用法

    關(guān)于Node.js中Buffer的一些你可能不知道的用法

    網(wǎng)上關(guān)于Node.js中Buffer用法的文章有很多,但是感覺還是不夠詳細(xì),所以這篇文章主要介紹了關(guān)于Node.js中Buffer的一些你可能不知道的用法,文中介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-03-03
  • 詳解Node.js 中使用 ECDSA 簽名遇到的坑

    詳解Node.js 中使用 ECDSA 簽名遇到的坑

    這篇文章主要介紹了詳解Node.js 中使用 ECDSA 簽名遇到的坑,主要是使用 Node.js 的 Crypto 模塊無(wú)法校驗(yàn)網(wǎng)絡(luò)傳輸過(guò)來(lái)的簽名結(jié)果,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Nodejs初級(jí)階段之express

    Nodejs初級(jí)階段之express

    這篇文章主要介紹了Nodejs初級(jí)階段之express的相關(guān)資料,需要的朋友可以參考下
    2015-11-11
  • nodejs 的 session 簡(jiǎn)單使用

    nodejs 的 session 簡(jiǎn)單使用

    session 不用多介紹,使一個(gè)http可以對(duì)應(yīng)一個(gè)終端用戶,需要的朋友可以參考下。
    2016-06-06
  • node運(yùn)行服務(wù)無(wú)響應(yīng)的解決

    node運(yùn)行服務(wù)無(wú)響應(yīng)的解決

    這篇文章主要介紹了node運(yùn)行服務(wù)無(wú)響應(yīng)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • node.js中的fs.fchownSync方法使用說(shuō)明

    node.js中的fs.fchownSync方法使用說(shuō)明

    這篇文章主要介紹了node.js中的fs.fchownSync方法使用說(shuō)明,本文介紹了fs.fchownSync方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12

最新評(píng)論

广汉市| 三门峡市| 凤冈县| 怀安县| 开江县| 固始县| 马公市| 沾益县| 朝阳区| 灌云县| 探索| 仁布县| 河北省| 开阳县| 申扎县| 蕉岭县| 洪泽县| 昌邑市| 陇西县| 昭苏县| 武城县| 渑池县| 茂名市| 兴隆县| 黑山县| 望城县| 井研县| 福建省| 鄂伦春自治旗| 门头沟区| 荆门市| 永德县| 平顶山市| 新蔡县| 五大连池市| 泰兴市| 奉节县| 定远县| 磐安县| 元谋县| 海城市|