Dotenv变量加载但使用变量时出现数据库连接错误

Dotenv variables loading but db connection error when variable used

正在测试 dotenv 是否正常工作,我有以下信息:

.env

DB_PORT = 8000;

server.js

import dotenv from 'dotenv';
dotenv.config();

....

const PORT = process.env.DB_PORT || 8001;
app.listen(PORT, () => {
    console.log(`Server is running on port ${PORT}.`);
});

如果我 运行 这个我得到错误(尽管它显示变量正在加载):

Error: listen EACCES: permission denied 8000;

更改端口和同样的事情:

Error: listen EACCES: permission denied 3000;

如果我在 .evn 文件中注释掉 DB_PORT 它可以在 8001 上运行。如果我将其注释掉并在 VS 代码终端中输入以下内容:

export DB_PORT = 3600;

3600 上 运行s。

为什么会这样?

这是您 .env 中的分号。您不使用分号终止 .env 文件中的行,只是一个标准的换行符。