在我的 app.js 文件中,我有以下代码
var express = require('express');
var app = express();
var port = 8080;
var util = require('util');
var router = require('./base/js/routes.js');
//==================================================================
app.use('/', router);
// start the server
app.listen(port, function(request, response) {
console.log('Port 8080: Server Begins');
});
//==================================================================
var ipaddress = '123.456.789';
//==================================================================
var mongoose = require('mongoose');
var mongoURI = "mongodb://"+ ipaddress +":27017/test";
var MongoDB = mongoose.connect(mongoURI);
MongoDB.on('error', function(err) {
console.log(err.message);
});
MongoDB.once('open', function() {
console.log("mongodb connection open");
});
//==================================================================
行 var MongoDB = mongoose.connect(mongoURI); 导致nodeJS无法工作。我不知道为什么。 NodeJS在端口8080上,MongoDB在端口27017上。
我相当确定我安装了mongodb软件包(并正确打开了端口)。我只是不明白为什么当我包含该连接线时nodeJS不起作用。
备注:我还永远安装了软件包:永远启动-c nodemon app.js 用于nodeJS。如果那是相关的。
答案 0 :(得分:0)
您使用的是错误的IP地址格式。
首先尝试连接本地mongoDB实例,如果它工作,那么你检查你尝试连接的IP地址是否正确。
如果问题仍然存在,请添加正确的错误消息。
答案 1 :(得分:0)
从/ etc文件夹更改mongod.conf文件
在mongod.conf中,您需要更改bindIp
如果连接是本地的,则将bindIp设置为
bindIp = 127.0.0.1
如果要使用远程数据库,则将bindIp更改为
bindIp = 0.0.0.0
然后重新启动mongo服务 希望这对您有帮助...