Когда http.IncomingMessage запускает свое «закрытое» событие?node.js http.IncomingMessage не запускает событие «закрыть»
В соответствии с documentation это должно происходить при закрытии подстилающего соединения. Тем не менее, никогда не вызывается для следующего примера кода (я сделал уверен, что это не вызвано Keep-Alive):
var http = require('http'),
fs = require('fs');
var server = http.createServer(function(req, res) {
res.shouldKeepAlive = false;
req.on("end", function() {
console.log("request end");
});
req.on("close", function() {
console.log("request close"); // Never called
});
res.end("Close connection");
});
server.listen(5555);
Я использую Node.js v0.10.22.
Я не уверен, но как насчет попытки прервать запрос до его завершения? Простите меня, если я говорю «бычьего дерьма» – gustavohenke
вы правы, может быть, «close» уволен, когда базовое соединение закрыто до отправки ответа? – roediger
Попробуйте, добавьте несколько секунд задержки и посмотрите, что произойдет – gustavohenke