Ошибка подключения NodeJS с помощью mongoDB
У меня возникла проблема соединить мое приложение socketIO (сделанное с nodeJS) с моим mongoDB.
Я пытаюсь подключиться на удаленном сервере, но его вызывает ошибку
Здесь мой код (там нет пользователя/пароля, установленного в mongoDB):
var url = "mongodb://192.168.1.5:27017/DB"
MongoClient.connect(url, function(err, db) {
console.log("test")
if (!err) {
console.log("test");
}
else {
console.dir(err)
throw err
}
// db.close();
});
И вот когда я запускаю сервер, и я попытался запустить приложение в навигаторе:
Сервер, прослушивающий порт 80:
{ [MongoError: connect ECONNREFUSED] name: 'MongoError', message: 'connect ECONNREFUSED' }
/root/fys-realtime/examples/chat/node_modules/mongodb/lib/server.js:228
process.nextTick(function() { throw err; })
^
Error
at Error.MongoError (/root/fys-realtime/examples/chat/node_modules/mongodb/node_modules/mongodb-core/lib/error.js:13:17)
at Server.destroy (/root/fys-realtime/examples/chat/node_modules/mongodb/node_modules/mongodb-core/lib/topologies/server.js:629:47)
at Server.close (/root/fys-realtime/examples/chat/node_modules/mongodb/lib/server.js:344:17)
at Db.close (/root/fys-realtime/examples/chat/node_modules/mongodb/lib/db.js:267:19)
at /root/fys-realtime/examples/chat/node_modules/mongodb/lib/db.js:196:12
at null.<anonymous> (/root/fys-realtime/examples/chat/node_modules/mongodb/lib/server.js:226:9)
at g (events.js:180:16)
at emit (events.js:98:17)
at null.<anonymous> (/root/fys-realtime/examples/chat/node_modules/mongodb/node_modules/mongodb-core/lib/topologies/server.js:238:68)
at g (events.js:180:16)
Ответы
Ответ 1
Эта ошибка возвращается для нескольких ошибок, таких как:
- сервер не работает
- вам необходимо аутентифицировать пользователя
- эта база данных не существует
- Порт mongodb не является портом по умолчанию
Проверьте это. Нормальная проблема - это только одна из причин.
Ответ 2
Для этого вам нужно внести изменения в /etc/mongod.conf
comment bind_ip = 127.0.0.1 Как будто эта строка не прокомментировала его. Прослушайте только локальный интерфейс.
Ответ 3
Одним из решений является изменение 127.0.0.1 на общедоступный ip или независимо от того, какой маршрутизатор предоставил вам в файле конфигурации mongodb, расположенном в/etc
Ответ 4
Не может быть причин для ошибки ECONNREFUSED.
Контрольные точки
- Убедитесь, что ваш порт не обслуживает какой-либо другой процесс.
- Проверьте, работает ли ваш mongod.
- Проверьте, правильно ли вы настроили localHost с вашим id или нет.
вы можете увидеть