应用程序不在 .env 文件中定义的端口上 运行 |节点JS

App not running on port defined in .env file | NodeJS

以下是我的代码-

apps.js

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

app.get('/api/users', (_req, res) => {
  res.send('Hello World');
})

app.listen(PORT, () => {
  console.log(`Server running on port: `, PORT);
});

.env 文件

PORT=8000

现在当我 运行 程序通过终端通过命令 - node app.js

我得到 -

Server running on port:  3000

但我希望它在 8000 上 运行 并从 .env 文件中选择它。让我知道我在这里做错了什么。

我知道虽然 运行 从终端我可以定义 PORT=8000app.set() 但我想从环境文件中选择它。让我知道我在这里/在理解方面做错了什么。

您可以使用 dotenv 自定义环境变量的 npm 包。

用法

在项目的根目录中创建一个 .env 文件:

PORT=8000

尽早在您的应用程序中导入并配置 dotenv:

require('dotenv').config();

// Your .env variables is now available in process.env object

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

app.get('/api/users', (_req, res) => {
  res.send('Hello World');
})

app.listen(PORT, () => {
  console.log(`Server running on port: `, PORT);
});

阅读官方压缩包:dotenv