当我运行这样的http.get请求时,它会返回5个条目的状态代码
var http = require("http");
var i = 10;
while (i--) {
(function (i) {
http.get("http://localhost", function (res) {
/*res.on('data', function (data) {
//console.log( i + "#data# " + data)
});*/
console.log(i + " #status# " + res.statusCode);
});
})(i);
console.log("requested " + i);
}
但是如果我添加res.on()事件处理程序,它会显示所有请求。
var http = require("http");
var i = 10;
while (i--) {
(function (i) {
http.get("http://localhost", function (res) {
res.on('data', function (data) {
//console.log( i + "#data# " + data)
});
console.log(i + " #status# " + res.statusCode);
});
})(i);
console.log("requested " + i);
}
根据我的理解 - 在第一个脚本中,我没有为任何res事件附加任何处理程序,所以它在while循环完成执行后立即终止。在这段时间内只有5个电话完成,我会得到它们的状态代码。
我的问题是,如果我只对我的请求的状态代码感兴趣,是否有办法获取它们而不是为“res”事件添加处理程序?