【发布时间】:2023-01-07 01:10:40
【问题描述】:
昨天,我安装并引用了 dotenv,服务器通过 env 在端口 4000 上调用,我让 Postman 工作并引用服务器但是当我今天开始编码时它停止了,我不知道我改变了什么,因为我没有不认为我做了什么。
我的 .env 文件如下:
PORT = 4000
NODE_ENV = DEVELOPMENT
DB_URI = mongodb+srv://<xxx>:<xxx>@products.<xxx>.mongodb.net/?retryWrites=true&w=majority`
我的server.js 文件如下:
const app = require ('./app');
const connectDatabase = require('./config/database');
const dotenv = require ('dotenv')
//I'm switching between these two PORT constants to debug
const PORT = process.env.PORT
const PORT = 4000
const URI = process.env.URI
// environment variable setup (tutorial runs server through the root, hence the backend/...).
dotenv.config({ path: 'backend/config/config.env'});
// DB connection
connectDatabase();
app.listen(PORT, () => {
console.log(`Server running on PORT: ${PORT} as a ${process.env.NODE_ENV} project`);
});
当我使用直接通过 server.js 调用的端口号运行时,端口加载为 4000:
但是当我运行环境变量时,我得到了未定义的信息:
这并不重要,但我关闭了我的 VPN 并重新启动了它。不知道为什么现在会出错。
【问题讨论】:
-
.env文件位于何处? -
dotenv.config()之前没有process.env.PORT。
标签: javascript node.js reactjs