我想使用express.js和mongoose开发一个app来启动快速服务器 我需要写
var express = require('express');
var app = express();
var server = app.listen(3000, function () {});
并连接到mongo,我需要这样写:
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.once('open', function (callback) {
// yay!
});
但我不知道如何组合这两个代码,以便我的服务器开始应答请求,只有我的应用程序与mongo建立了正确的连接
答案 0 :(得分:2)
制作您的应用
var app = express();
创建你的数据库
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
使用回调创建连接处理程序
var connectDB = function(next){
//Bootstrap db connection
mongoose.connect(db, function(err){
if(err) return next(err);
next();
});
};
创建您的服务器
var server = http.createServer(app);
connectDB(function(err){
var port = 8000;
if(err) throw new Error('connection error');
server.listen(port, function(){
console.log('server listening on port ' + port);
});
});