删除Mongoose包并重新安装后,我遇到了一个错误。
我得到的错误似乎与Mongo DB Atlas instruction上的指令冲突。在dbURI中放置用户名和密码的位置。
错误:
蒙戈解析错误:凭据必须是具有"username"和"password"属性的对象
这是我的连接:
const dbURI = "mongodb+srv://admin:mypass@cluster0.iujq0.mongodb.net/myApp?retryWrites=true&w=majority"
const options = {
auth: { authSource: 'admin'},
useUnifiedTopology: true,
useNewUrlParser: true,
}
mongoose.set('strictQuery', false);
mongoose.connect(dbURI, options)
.then(() => console.log('MongoDB Connected'))
.catch(err => console.log(err))
该错误指示将用户名和口令放入选项对象
我使用节点v 19.3和Mongoose 6.8.2。
2条答案
按热度按时间wlwcrazw1#
你不需要在mongoose的connect方法中指定用户名和密码,因为它已经被插入到URL本身中了。换句话说,当连接到你的Atlas时,不需要添加任何选项。
下面是一个例子:
xesrikrc2#
根据官方Mongoose文件,这些是选项对象。