你如何正确连接mongoDB?
Posted
技术标签:
【中文标题】你如何正确连接mongoDB?【英文标题】:How do you properly connect mongoDB? 【发布时间】:2021-06-15 05:01:05 【问题描述】:我有这个,但它会带来很多错误。有什么建议吗?
mongoose.connect(process.env.SRV,
useNewUrlParser: true,
useUnifiedTopology: true,
useFindAndModify: false
).then(() =>
console.log('Connected to database!')
).catch((err) =>
console.log(err)
);
以下是错误:
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.
at NativeConnection.Connection.openUri (C:\Code\bots\BuyBot\node_modules\mongoose\lib\connection.js:688:11)
at C:\Code\bots\BuyBot\node_modules\mongoose\lib\index.js:348:10
at C:\Code\bots\BuyBot\node_modules\mongoose\lib\helpers\promiseOrCallback.js:31:5
at new Promise (<anonymous>)
at promiseOrCallback (C:\Code\bots\BuyBot\node_modules\mongoose\lib\helpers\promiseOrCallback.js:30:10)
at Mongoose._promiseOrCallback (C:\Code\bots\BuyBot\node_modules\mongoose\lib\index.js:1140:10)
at Mongoose.connect (C:\Code\bots\BuyBot\node_modules\mongoose\lib\index.js:347:20)
at Object.<anonymous> (C:\Code\bots\BuyBot\index.js:17:10)
at Module._compile (internal/modules/cjs/loader.js:1063:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
at Module.load (internal/modules/cjs/loader.js:928:32)
at Function.Module._load (internal/modules/cjs/loader.js:769:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
at internal/main/run_main_module.js:17:47
我不知道它为什么这么生气。
【问题讨论】:
包括您遇到的错误 您是否尝试过查看 Mongoose 的文档 这意味着您没有名为SRV
的环境变量,或者您没有正确设置process.env
。您是否使用dotenv 或类似模块来实现这一点?
【参考方案1】:
在根文件夹中创建一个 .env 文件,并在该文件中添加以下行。不要忘记在您的应用程序中包含 dotenv 包。
SRV="Your_Mongo_URI"
现在运行代码,这可能对你有用。
【讨论】:
以上是关于你如何正确连接mongoDB?的主要内容,如果未能解决你的问题,请参考以下文章