1
我試圖找出一種方法來使this庫與gzip和deflate一起工作。使用zlib庫的Node.js請求
看着this問題,試過了這些建議,但由於某種原因它仍然無法正常工作。我對node.js比較陌生,有人可以看看我的代碼並告訴我我做錯了什麼嗎?
var request = require("request"),
zlib = require('zlib');
var req = request({
uri: "http://google.com",
headers: {
'Accept-Encoding': 'gzip, deflate',
'user-agent': 'Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1',
},
},
function(error, res, body) {
var output;
switch (res.headers[ 'content-encoding' ]) {
case 'gzip':
var gzip = zlib.createGunzip();
res.pipe(gzip);
output = gzip;
break;
case 'deflate':
var gzip = zlib.createInflate();
res.pipe(gzip);
output = gzip;
break;
default:
res.setEncoding('utf8');
output = res;
break;
}
//console.log(body) // outputs encoded html
output.on('data', function (data) {
console.log(data); // never happens
});
output.on('end', function() {
console.log(data); // never happens
});
});