アプリのドメイン検索をすぐに実行しようとすると、エクスプレス サーバーは 1 回のクエリで終了します。意味的には、いくつかのコードを再配置する必要があると感じていますが、どれかはわかりません。
var ee = new eventEmitter;
var queries = new Array();
ee.on('next', next_search);
function next_search() {
search(queries[a]);
if (queries.length == a) process.exit(0);
++a;
}
function search(x) {
dns.resolve(x, function (err) {
if (!err) {
console.log('bad: ' + x)
ee.emit('next')
} else {
console.log('good: ' + x)
ee.emit('next')
}
});
}
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
app.post('/search', function (req, res) {
domain = req.param('domain');
queries.push(domain);
search(queries[queries.length]);
});
var a = 0;
http.createServer(app).listen(app.get('port'), function () {
console.log("Express server listening on port " + app.get('port'));
});