2014-04-08 37 views
1
var fs = require('fs'); 

var mongo = require("mongodb"); 

var config = JSON.parse(fs.readFileSync('./config.json')); 

var host = config.host; 

var port = mongo.Connection.DEFAULT_PORT; 

var db = new mongo.Db("Nodejs-introduction", new mongo.Server(host,port,{})); 

db.open(function(error){ 
console.log("we are connected " + host + " : " + port); 

db.collection("user",function(error,collection){ 
    console.log("we have the collection"); 

    collection.insert({ 
     name:"jarvis" 
    }, function(err,result){ 
     if(err) throw err; 

     console.log(result); 

     db.close(); 
    }); 

}); 

});数据库连接在nodejs和mongodb之间不成功

对于上述程序。我得到以下错误在命令提示符下 enter image description here

错误后变化如下:

enter image description here

+0

其实上市之后db.collection''你从来没有关闭回调这个问题。那么它实际上在哪里关闭?该类型错误表明您可能引用了超出范围的内容。 –

+0

@NeilLunn正确安装mongodb解决了这个问题。我认为mongodb已经安装,但事实证明它没有。 –

回答

0

解决由R e在此安装MongoDB的

0

您的连接是好的,我认为问题可能出在这里

collection.insert({ 
    name: "jarvis" 
}, function(err,result){ 
    console.log(err); 
}); 

您可能有问题尝试登录错误,而没有与该插入错误。尝试制作:

collection.insert({ 
    name: "jarvis" 
}, function(err,result){ 
    if(err) throw err; 

    console.log(result); 

    db.close(); 
}); 

并记住关闭db。

+0

错误未解决我将在进行更改后发布以下错误。 –

+1

正确安装mongodb解决了问题。我认为mongodb已经安装,但事实证明它没有。 –