我需要使用mongoose连接到Atlas副本集。这真的很奇怪。如果我通过mongodb-js驱动程序连接一切正常。 CRUD就像一个魅力。
这是我通过MongoClient连接的方式:
let dbURL = 'myAtlasConnectionURL';
let db = await MongoClient.connect(dbURL);
await db.collection('users').insert({name: 'username'});
let result = await db.collection('users').find({});
log.info('result', await result.toArray());
db.collection('users').remove({});
await db.close();
但如果使用mongoose连接我会继续:
MongoError: connection 5 to cluster0-shard-00-02-c4nst.mongodb.net:27017 closed
at Function.MongoError.create (/mypath/vendors/node_modules/mongodb-core/lib/error.js:29:11)
at Socket.<anonymous> (/mypath/vendors/node_modules/mongodb-core/lib/connection/connection.js:202:22)
at Object.onceWrapper (events.js:316:30)
at emitOne (events.js:115:13)
at Socket.emit (events.js:210:7)
at TCP._handle.close [as _onclose] (net.js:548:12)
以下是我尝试使用与上述相同的dbURL通过mongoose进行连接的方式:
mongoose.connect(dbURL, {
useMongoClient: true
});
我不知道,可能出现什么问题。