このコードはノード 0.10 で動作していますが、0.8 では何も出力されません。
var http = require('http');
var req = http.request('http://www.google.com:80', function(res) {
setTimeout(function() {
res.pipe(process.stdout);
}, 0);
});
req.end();
いくつか推測した後、回避策を見つけました:
var http = require('http');
var req = http.request('http://www.google.com:80', function(res) {
res.pause();
setTimeout(function() {
res.resume();
res.pipe(process.stdout);
}, 0);
});
req.end();
しかし、ドキュメントによると、一時停止は推奨されており、これは私を混乱させます。どこにも接続されていないストリームを一時停止する必要があるのはなぜですか?