我是Node.js和MongoDB的新手。我正在按照本指南:http://howtonode.org/express-mongodb创建一个包含Node.js和MongoDB的简单博客。
当节点尝试连接到MongoDB时,它失败了,我不知道为什么。
在我的app.js文件中,我有:
var articleProvider = new ArticleProvider('127.0.0.1', 27107);
在我的articleprovider-mongodb.js文件中我有
var Db = require('mongodb').Db;
var Connection = require('mongodb').Connection;
var Server = require('mongodb').Server;
var BSON = require('mongodb').BSON;
var ObjectID = require('mongodb').ObjectID;
ArticleProvider = function(host, port) {
this.db = new Db('node-mongo-blog', new Server(host, port, {auto_reconnect: true}, {}));
this.db.open(function(err){
if(err) {
console.log(err);
}
});
};
在我的终端,我得到:
8月9日10:48:19 - [nodemon]开始node app.js
[错误:无法连接到[127.0.0.1:27107]]
我正在运行node.js v0.8.6和mongodb v2.0.6
我在这些文件中有其他代码,但从我看到它不应该影响数据库连接。
答案 0 :(得分:2)
当mongod进程不正在运行或你正在连接到错误的主机/ ip时,会发生这种情况。
您是否在本地主机上运行它?如果可以,您可以从mongo shell访问它?
尝试使用node,express和mongodb nodejs驱动程序的最低版本的应用程序进行测试。
我用这些文件测试了它:
除了最后两行app.js之外,它运行良好,因为 express 3.x而不是示例中使用的2.x.
var server = app.listen(3000);
console.log("Express server listening on port %d in %s mode", server.address().port, app.settings.env);