首页 > 解决方案 > 在 Heroku 中部署时,.env 中的 MONGO_URI 不起作用

问题描述

我正在尝试在 heroku 上部署一个应用程序,但如果我使用 dotenv,我就不能。此代码不起作用:

mongoose.connect(process.env.MONGO_URI, { useNewUrlParser: true }, () => {
  console.log("Connected to db successfully");
});

但这确实:

mongoose.connect("mongodb+srv://test:test@cluster0.j0you.mongodb.net/ecommerce?retryWrites=true&w=majority", { useNewUrlParser: true }, () => {
  console.log("Connected to db successfully");
});

当我尝试使用 dotenv heroku 时抛出此错误:

MongooseError: The `uri` parameter to `openUri()` must be a string, got "undefined". Make sure the first parameter to `mongoose.connect()` or `mongoose.createConnection()` is a string.

标签: javascriptnode.jsherokudotenv

解决方案


我不得不去heroku仪表板>设置>配置变量,然后将密钥添加为MONGO_URI和mongodb给我的mongo url值


推荐阅读