Javascript Mongodb可以';无法在本地主机上连接

Javascript Mongodb可以';无法在本地主机上连接,javascript,node.js,mongodb,express,mongoose,Javascript,Node.js,Mongodb,Express,Mongoose,当我使用此命令运行我的应用程序时 node app.js 我得到这个错误: 连接错误{MongoError:server localhost:8080套接字已关闭} app.js var http=require('http'); var express=require('express'); var mongoose = require('mongoose'); var bodyParser = require('body-parser'); var app=express(); var

当我使用此命令运行我的应用程序时 node app.js 我得到这个错误: 连接错误{MongoError:server localhost:8080套接字已关闭}

app.js

var http=require('http');
var express=require('express');
var mongoose = require('mongoose');   
var bodyParser = require('body-parser');
var app=express();
var server=http.createServer(app);
var port = process.env.PORT || 8080;

mongoose.connect('mongodb://localhost:8080/matest');

var db = mongoose.connection;

db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
  // we're connected!
  console.log('connected');

});

var mySchema = new mongoose.Schema({
    _id    : String,
    name: String,
    age   : Number
});

var user = mongoose.model('emp', mySchema);
server.listen(port);

我认为最好使用:

var db = mongoose.createConnection('localhost','test')
不需要设置端口,因为27017是mongo的默认端口,mongoose知道这一点。 “test”是您使用的数据库(与使用mongdo一样,您以前不需要创建数据库)


8080是您网站的端口,而不是mongodb。

您确定您的mongo在8080上吗?你能用控制台连接到它吗?@AlexanderM。我认识谁mongo有8080端口?我是beginner@AlexanderM. 当我运行db.runCommand({whatsmyuri:1})时,它显示127.0.0.1,'ok',1}我想编辑这个ip到本地主机:8080,怎么办?@AlexanderM。当我运行commande“mongod”时,我看到这条消息正在等待端口27017上的连接,这意味着27017在您的端口上。