我一直在尝试将节点连接到MongoDB,但出现错误

时间:2019-05-17 10:13:58

标签: node.js mongodb

我已经在mongoDB上创建了用户名和密码,并在NodeJS中编写了用于连接的代码,但是每次控制台时都会出现错误。将结果记录到Node JS服务器上。

我已经在Atlas后端上更改了密码,但仍然无法正常工作

const mongodb = require('mongodb');
const MongoClient = mongodb.MongoClient;


const mongoConnect = callback =>{
    MongoClient.connect(
        'mongodb+srv://Olumide:84NZWm15WHH4JOP4@cluster0- 

alft3.mongodb.net/test?retryWrites=true'              )                  .then(client => {          console.log('Connected !!!');          回调(客户端);      })。catch(err => {          console.log(err);      });     }

module.exports = mongoConnect;

[nodemon] 1.19.0 [nodemon]随时重新启动,请输入rs [nodemon]观看: [nodemon]开始node server.js (节点:12248)DeprecationWarning:不建议使用当前的URL字符串解析器,并将在以后的版本中将其删除。要使用新的解析器,请将选项{useNewUrlParser:true}传递给MongoClient.connect。 {错误:querySrv ETIMEOUT _mongodb._tcp.cluster0-alft3.mongodb.net     在QueryReqWrap.onresolve [完成时](dns.js:197:19)   errno:“ ETIMEOUT”,   代码:“ ETIMEOUT”,   syscall:“ querySrv”,   主机名:'_mongodb._tcp.cluster0-alft3.mongodb.net'} [nodemon]干净退出-等待更改,然后重新启动

1 个答案:

答案 0 :(得分:0)

警告的解决方案是:

MongoClient.connect('<connection_string>', { useNewUrlParser: true })

大约ETIMEOUT错误是由于mongo服务问题(请参阅MongoDB ETIMEOUT)或远程计算机问题