简介
在前端开发和项目部署过程中,环境变量非常重要,而环境变量的管理也应该是一个严谨、可控的过程。npm 包 envcrypt 便是一个有效的解决方案。envcrypt 可以让你轻松地管理敏感的环境变量,而不需要将它们暴露在代码或配置文件中。
安装
在项目目录下,通过 npm 安装:
npm install envcrypt
用法
加密环境变量
在项目根目录下,创建一个名为 .env
的文件。在这个文件中,你可以定义你的环境变量,以 KEY=VALUE
的形式。例如:
DATABASE_URL=http://localhost:5432/myapp SECRET_KEY=my-secret-key
使用命令行工具,执行以下命令加密 .env
文件中的环境变量:
npx envcrypt encrypt .env
这个命令将加密 .env
文件中的环境变量。加密后的文件将自动命名为 .env.encrypted
。
配置环境变量
在 JavaScript 中,可以通过以下方式配置环境变量:
require('envcrypt').config()
config()
函数会读取 .env.encrypted
文件,将其中的密文还原为明文,并将环境变量添加至 process.env
对象中。
需要注意的是,无论是在开发环境还是生产环境中都需要配置环境变量。你应该在项目启动的最前面配置环境变量。
const express = require('express'); const envcrypt = require('envcrypt'); envcrypt.config(); const app = express(); // ...
示例代码
下面是一个示例代码,通过 express
,获取加密后的环境变量:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- -------- - -------------------- ------------------ ----- --- - ---------- ------------------ ------------- ---- - ---------------------- --- ---------------- ---------- - ------------------- ------- -- ---- ------- ---
在项目根目录下创建 .env
文件:
DATABASE_URL=postgres://user:pass@localhost:5432/myapp API_KEY=my-secret-api-key
执行命令:
npx envcrypt encrypt .env
在浏览器中访问 http://localhost:3000/config
,可以看到加密后的环境变量:
{ "DATABASE_URL": "postgres://user:pass@localhost:5432/myapp", "API_KEY": "my-secret-api-key" }
总结
envcrypt 是一个在前端项目中使用的好工具。它可以让你更加安全地管理环境变量,并且简化了环境变量的使用。在使用 envcrypt 时,需要注意保护好你的环境变量文件,以免被泄露。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005662f81e8991b448e2126