TypeError:无法读取null [duplicate]的属性'close'

问题描述 投票:-1回答:1

这个问题在这里已有答案:

这是我的代码:

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

const url = 'mongodb://localhost:27017/edx-course-db'

MongoClient.connect(url, (err, db) => {
    console.log('Kudos. Connected successfully to server')
    db.close()
})

错误:

TypeError:无法在args.push(/ home /)的MongoClient.connect(/home/akshay/nodeJs/node-edx/mongoDB/mongodb-script-project/server.js:11:6)读取null的属性'close' akshay / nodeJs / node-edx / mongoDB / mongodb-script-project / node_modules / mongodb / lib / utils.js:404:25)at / home / akshay / nodeJs / node-edx / mongoDB / mongodb-script-project / node_modules / mongodb / lib / mongo_client.js:270:21 at connectCallback(/home/akshay/nodeJs/node-edx/mongoDB/mongodb-script-project/node_modules/mongodb/lib/mongo_client.js:935:5)at /home/akshay/nodeJs/node-edx/mongoDB/mongodb-script-project/node_modules/mongodb/lib/mongo_client.js:784:11在_combinedTickCallback(内部/进程/ next_tick.js:131:7)处理。 _tickCallback(internal / process / next_tick.js:180:9)

mongodb
1个回答
0
投票

您永远不会检查err对象以查看它是否已成功连接。无论连接是否成功,都将调用该回调。当函数完成其调用时,只调用回调,它并不意味着调用成功或失败。

检查err对象以获取更多详细信息,但我怀疑mongod没有在该端口上运行。

尝试运行以下命令以验证mongod是否正在运行。

netstat -tulpn | grep mongod
mongo --eval "db.version()"
© www.soinside.com 2019 - 2024. All rights reserved.