我可能会遗漏一些东西,但官方文档中似乎没有任何内容,所以我不敢在这里问;
我正在尝试在应用程序启动时异步设置一些东西(连接到数据库等)。我希望在应用程序准备好接受连接之前完成此操作(出于显而易见的原因)。
有没有办法在Express 4.x中执行此操作?
这里基本上是我想要的an example,但它不受支持,此时已过时4年。
感谢任何帮助。
编辑:我觉得我应该指出我使用express-generator
来设置应用程序,因此所有服务器监听都在bin/www
内完成。我应该修改这个文件吗?或者我可以从app.js
控制它吗?
答案 0 :(得分:1)
例如,您可以使用promises,如下所示:
var express = require('express');
var app = express();
var Q = require('q');
var d = Q
mongoose.connect('mongodb://localhost/db', function(){
return d.resolve();
});
d.promise.then(function(){
app.listen(8080);
});