【发布时间】:2018-04-19 05:32:14
【问题描述】:
我一直在尝试通过 nodejs 连接本地 mongo 服务器。
这里是mongodb官方给出的简单教程,但是不钩once部分。
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function () {
// we're connected!
console.log("connected");
});
这是我项目的 package.json:
{
"name": "MVC-Express-Application",
"description": "An Express.js application using the MVC design pattern...",
"version": "0.0.1",
"dependencies": {
"body-parser": "1.4.3",
"errorhandler": "1.1.1",
"express": "4.4.4",
"express-handlebars": "1.1.0",
"mongoose": "^3.8.8",
"morgan": "1.1.1"
}
}
当我输入mongo 他们说
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.10
Server has startup warnings:
2017-11-07T07:58:20.003+0900 I CONTROL [initandlisten]
2017-11-07T07:58:20.003+0900 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-11-07T07:58:20.003+0900 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2017-11-07T07:58:20.003+0900 I CONTROL [initandlisten]
所以它应该在控制台上显示connected,但没有。
有人知道如何处理吗?我尝试通过brew重新安装mongo。
谢谢。
macOS Sierra 10.12.6 节点 v7.6.0
【问题讨论】:
-
您缺少端口 27017
-
在“localhost”之后添加 27017 并没有让事情变得更好......
-
启动应用时它会说什么?
-
大概是你开始 mongo 在你开始你的应用程序之前?另外,你得到什么错误?
-
所以在这里我错过了描述,但即使我启动了
mongod并且应该已经启动了服务器,启动节点应用程序并没有启动once部分。
标签: node.js mongodb express web