如何在API端点中访问ExpressJS环境变量
使用环境变量可以在软件/应用程序外部配置值,从而确保不必将敏感数据存储在代码本身中。它还可以在应用程序中重新配置设置而无需重新部署。
在本文中,我们将使用Node和Express创建一个RESTful API,该API将从.env文件中获取环境变量并将其值作为响应返回。
先决条件:
- Node.js是一个开源的跨平台运行时环境,用于在浏览器外部执行JavaScript代码。
- Express.js是一个小型框架,位于Node.js的Web服务器功能之上,以简化其API并添加有用的新功能。
按照以下步骤访问API端点中的环境变量:
步骤1: 我们需要使用Node Package Manager初始化一个新项目。我们可以通过选择所有默认选项来完成设置。
npm init
步骤2: 我们需要安装express和.env包。
npm install express dotenv --save
步骤3: 创建一个名为index.js的文件,该应用程序的入口点将是index.js文件。我们所有的业务逻辑都将放在这里。REST API只包含一个单独的路线,将返回我们将要设置的环境变量。
const express = require('express');
// Initialize app
const app = express();
// Assign route
app.use('/', (req, res, next) => {
res.send('Hello World');
});
// Start server
app.listen(5000, () => {
console.log('App listening on port 5000');
});
步骤4: 创建.env文件。我们需要创建一个包含MY_NAME环境变量的.env文件。
MY_NAME=Geeksforgeeks
项目结构:
现在,我们将有以下文件结构。
加载环境变量:
接下来,我们需要在index.js文件中导入.env包。
const dotenv = require('dotenv');
现在,我们可以通过设置路径来配置它,并从中加载变量。
dotenv.config({ path: './.env' });
我们现在可以通过使用该方法在我们的index.js文件中访问环境变量。
process.env.VARIABLE_NAME
在这种情况下,它将是
process.env.MY_NAME
最终代码:
const dotenv = require('dotenv');
const express = require('express');
// Set path to .env file
dotenv.config({ path: './.env' });
// Initialize app
const app = express();
// Assign route
app.use('/', (req, res, next) => {
const name = process.env.MY_NAME;
res.status(200).json({ name });
});
// Start server
app.listen(5000, () => {
console.log('App listening on port 5000');
});
输出:
"name":"Geeksforgeeks"