gpt4 book ai didi

node.js - Heroku 错误 : Invalid schema, 预期为 `mongodb` 或 `mongodb+srv`

转载 作者:太空宇宙 更新时间:2023-11-04 00:00:43 24 4
gpt4 key购买 nike

我的应用程序能够在本地连接到 MongoDB,但在 heroku 日志上我收到此错误:

错误:架构无效,需要 mongodbmongodb+srv

这就是我的 server.js 文件中与 mongodb 的连接:

// // DB config
const db = require("./config/keys").mongoURI;

// // Connect to MongoDB
mongoose
.connect(db)
.then(() => console.log("MongoDB connected"))
.catch(err => console.log(err));

配置/键:

if (process.env.NODE_ENV === "production") {
module.exports = require("./keys_prod");
} else {
module.exports = require("./keys_dev");
}

keys_dev:

module.exports = {
mongoURI:
"mongodb://jenn123:jenn123@devconnect-shard-00-00-acrk4.mongodb.net:27017,devconnect-shard-00-01-acrk4.mongodb.net:27017,devconnect-shard-00-02-acrk4.mongodb.net:27017/test?ssl=true&replicaSet=devconnect-shard-0&authSource=admin&retryWrites=true",
secretOrKey: "secret"
};

key 产品:

module.exports = {
mongoURI: "process.env.MONGO_URI",
secretOrKey: "process.env.SECRET_OR_KEY"
};

非常感谢任何帮助

最佳答案

好吧,你的生产 key 是错误的。

process.env 是一个包含 env 变量作为键及其值的对象。因此,您不必将它们放入字符串中,而是必须删除字符串并将其视为对象。如下所示:

module.exports = {
mongoURI: process.env.MONGO_URI,
secretOrKey: process.env.SECRET_OR_KEY
};

关于node.js - Heroku 错误 : Invalid schema, 预期为 `mongodb` 或 `mongodb+srv`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54819404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com