Mongoskin NPM包用于远程Mongodb数据库中的Node.js到find
文档。但是,执行简单的find
操作会抛出MongoError。插入文件很好。出了什么问题?
使用节点v0.12.0,mongoskin v1.4.13,mongodb v3.0.4。
代码
var mongo = require('mongoskin')
var db = mongo.db('mongodb://domain.com:27017/dbname', {native_parser: true})
db.collection('animals').find({}, function(err, result) {
result.each(function(err, doc) {
console.log(err)
})
db.close()
})
这会引发错误:
{ [MongoError: Connection Closed By Application] name: 'MongoError' }
db.collection('animals').find({}, function(err, result) {
if(err)
console.log(err)
console.log('result.length: ' + result.length)
result.each(function(index, doc) {
console.log(index)
if(index == result.length -1)
db.close()
})
})
返回
result.length: undefined
null
null
答案 0 :(得分:1)
我相信您的计划connection
在each
完成工作之前即将结束。尝试类似:
db.collection('animals').find({}, function(err, result) {
result.each(function(index, doc) {
console.log(index)
//if each finish then db.close()
if(index == result.length-1)
db.close()
})
})