我想开发一个应用程序使用express.js和猫鼬,启动一个快递服务器我需要写
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
创建应用程序
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);
});
});