MongoError:第一次连接时无法连接到服务器

Ary*_*yan 6 mongodb express

const express = require('express')
const app = express()   //initialised express. using express by requiring it.
//conecting the server to browsers
const bodyParser = require('body-parser')
const MongoClient = require('mongodb').MongoClient

var db

MongoClient.connect('mongodb://aryan:aryan@ds127938.mlab.com:27938/post-quotes', 
                    (err, database) => {
    console.log('inside')
    //We move app.listen() so that it boots up only when our database is connected; ony aftert that should it flag: listening
    if (err) return console.log(err)

    db = database
    app.listen(process.env.PORT || 3000, function()  {
    console.log('listening on 3000')
})
    db.collection('quotes').find().toArray( (err, results) => {
        console.log(results)
    })
})

app.use(bodyParser.urlencoded({extended: true}))
//enabling body parser to handle formms as in our case




app.get('/', (req, res) => {
    res.sendFile('/media/aryan/Adani/zellwk' + '/index.html')
})  // /index.html specifies that index.html is stored in the root of your project directory.

app.post('/quotes', (req, res) => {
    db.collection('quotes').save(req.body, (err, result) =>{    //creating a mongodb Collection called quotes and usiing .save silmultaneously to save it on the mongodb server
        if (err) return console.log(err)

        console.log("Save Successful")
        res.redirect('/')   // Now what after the user presses submit. We need to show him som echanges. So  redirect him to the starting page. 

    })



})
Run Code Online (Sandbox Code Playgroud)

在日志屏幕中,我收到一个错误:

MongoError:第一次连接时无法连接到服务器 [ds047955.mongolab.com:47955]

这是完整的日志:

里面 { MongoError: 无法连接到服务器 [ds127938.mlab.com:27938] 在第一次连接到池时。(/media/aryan/Adani/zellwk/node_modules/mongodb-core/lib/topologies/server.js:309:35) 在 EmitOne (events.js:96:13) 在 Pool.emit (events.js:188: 7) 在连接处。(/media/aryan/Adani/zellwk/node_modules/mongodb-core/lib/connection/pool.js:270:12) 在 Connection.g (events.js:292:16) 上的emitTwo (events.js:106: 13) 在 Connection.emit (events.js:191:7) 在 Socket。(/media/aryan/Adani/zellwk/node_modules/mongodb-core/lib/connection/connection.js:185:10) 在 Socket.g (events.js:292:16) 在 emitNone (events.js:86: 13)名称:'MongoError',消息:'无法连接到服务器[ds127938.mlab.com:

小智 2

根据您的错误消息,我假设您正在使用 mlab 中的 mongodb 进行连接。

我曾经遇到过这个错误,那是因为我的密码包含“ @ ”字符。因此,在更改/删除“ @ ”字符之后。我认为mlab 使用“ @ ”字符来分隔连接字符串。

希望对您或其他人有帮助。