我有两个docker容器,一个用于数据库,另一个用于API。 我正在尝试在API中进行一些测试,我需要使用monckgoose。 我可以使用mongoose创建一个成功的连接,但是当我尝试通过mockgoose创建连接时,我得到 MongoError:身份验证失败。 。
mockgoose.prepareStorage().then(() => {
console.log("inside prepareStorage");
mongoose.Promise = promise;
console.log("before connect);
mongoose.connect(url, options, (error) => {
console.log("error:" + error);
});
}).catch((error) => {
console.log(error);
});
url is - > mongodb:// database / myDB 其中数据库是docker-compose.yml中的服务 options param只包含正确的用户和传递。
数据库日志显示以下信息:
2018-03-08T17:22:44.549+0000 I COMMAND [conn2] command admin.$cmd command: isMaster { ismaster: true, $readPreference: { mode: "secondaryPreferred" }, $db: "admin" } numYields:0 reslen:223 locks:{} protocol:op_query 137ms
2018-03-08T17:26:14.033+0000 I COMMAND [thread4] command config.$cmd command: createIndexes { createIndexes: "system.sessions", indexes: [ { key: { lastUse: 1 }, name: "lsidTTLIndex", expireAfterSeconds: 1800 } ], $db: "config" } numYields:0 reslen:134 locks:{ Global: { acquireCount: { r: 1, w: 1 } }, Database: { acquireCount: { W: 1 } } } protocol:op_msg 207ms
有谁知道为什么我无法在 prepareStorage 中创建连接?