📜  如何在 javascript 中使用 dotenv - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:38:17.547000             🧑  作者: Mango

如何在 JavaScript 中使用 dotenv

在开发 Web 应用程序时,很重要的一点是要保护敏感信息,如 API 密钥、数据库凭据等。将这些信息直接放在代码中可能会导致安全漏洞。为了解决这种问题,我们可以使用 dotenv 库。

dotenv 是一个非常简单的库,它可以将环境变量注入到 Node.js 中。我们可以在将应用程序部署到不同的环境时,通过设置一些环境变量来使应用程序运行。

要在 JavaScript 中使用 dotenv,我们需要做以下步骤:

安装 dotenv

首先,我们需要在项目中安装 dotenv。可以使用 npm 或 yarn 进行安装:

npm install dotenv

# 或者

yarn add dotenv
创建 .env 文件

接下来,在项目根目录下创建一个名为 .env 的文件。在这个文件中,我们可以将我们的敏感信息存储为环境变量。每行一个变量,格式为 VARIABLE_NAME=VALUE

例如:

PORT=3000
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=password

注意,.env 文件包含敏感信息,因此不应该将其存储在版本控制系统中。请确保将其添加到 .gitignore 文件中。

加载环境变量

在应用程序中,需要加载环境变量。在 JavaScript 中,可以使用 dotenv 模块加载 .env 文件中的变量。

const dotenv = require('dotenv');
const result = dotenv.config();

if (result.error) {
  throw result.error;
}

console.log(result.parsed);

这个简单的脚本会将 .env 文件中列出的所有环境变量打印出来。在这个例子中,我们使用 dotenv 模块的 config() 方法加载环境变量。如果解析 .env 文件时发生错误,config() 方法将返回错误。否则,它将返回解析的环境变量。我们可以将其存储在一个对象中,以后在应用程序中使用。

使用环境变量

使用环境变量非常简单,因为它与使用任何其他变量完全相同。例如,假设我们要在一个 Express 应用程序中使用 PORT 环境变量。我们可以这样做:

const express = require('express');
const app = express();
const port = process.env.PORT || 3000;

app.listen(port, () => {
  console.log(`Server is listening on port ${port}`);
});

在这个例子中,我们使用 process.env.PORT 访问 PORT 环境变量。如果没有设置 PORT 环境变量,则使用默认值 3000。

结论

dotenv 可以使我们更加安全地存储和管理敏感信息。首先,我们将这些信息存储在 .env 文件中,而不是在代码中。然后,通过加载 .env 文件中的变量,我们可以在运行时注入这些变量到应用程序中。

这使得我们的应用程序变得更加灵活和可移植。我们可以在不同的环境中使用相同的代码,而不必更改代码来适应各种环境。