为什么node.js总是说我已经连接到MongoDB,即使“ URI”是假的还是错误的?

时间:2019-08-15 17:03:52

标签: node.js mongodb mongoose connection

我正在用mongoose在node.js中测试mongoDB连接。我遵循猫鼬的官方指南,当我尝试像他们所说的那样进行连接时,即使给定的URI是假的或错误的,猫鼬也会一直说我已连接。我的连接尝试正确吗?

我想将我的应用程序连接到名为“ technicaltest”的数据库。

我的代码:

const mongoose = require('mongoose');

const db = mongoose.createConnection('mongodb://localhost/technicaltest', {useNewUrlParser: true});

db.on('connected', () => {
    console.log('Connected to mongoDB !');
});

db.on('disconnected', () => {
    console.log('Disconnected to mongoDB !');
});

控制台输出:

> set PORT=3001 && node bin/www

Connected to mongoDB !

此代码的输出相同:

const mongoose = require('mongoose');

const db = mongoose.createConnection('mongodb://localhost/someWeirdyThingsHere', {useNewUrlParser: true});

db.on('connected', () => {
    console.log('Connected to mongoDB !');
});

db.on('disconnected', () => {
    console.log('Disconnected to mongoDB !');
});

我认为,如果mongoose无法连接到mongoDB中的正确数据库,控制台中将不会提示任何信息... 但在这儿... 无论如何,“已连接”事件将被调用。

1 个答案:

答案 0 :(得分:0)

我认为您忘记将端口(27017)添加到mongodb连接中。 应该是

const db = mongoose.createConnection('mongodb://localhost:27017/technicaltest', {useNewUrlParser: true});