永发信息网

我怎么解压缩的NodeJS要求的模块的gzip响应体

答案:1  悬赏:40  手机版
解决时间 2021-02-25 01:15
我怎么解压缩的NodeJS要求的模块的gzip响应体
最佳答案
我无法得到请求管用,所以不是结束的http。var http = require("http"),
zlib = require("zlib");

function getGzipped(url, callback) {
// buffer to store the streamed decompression
var buffer = [];

http.get(url, function(res) {
// pipe the response into the gunzip to decompress
var gunzip = zlib.createGunzip();
res.pipe(gunzip);

gunzip.on('data', function(data) {
// decompression chunk ready, add it to the buffer
buffer.push(data.toString())

}).on("end", function() {
// response and decompression complete, join the buffer and return
callback(null, buffer.join(""));

}).on("error", function(e) {
callback(e);
})
}).on('error', function(e) {
callback(e)
});
}

getGzipped(url, function(err, data) {
console.log(data);
});

2. 尝试添加encoding: null给你传递给选项request,这将避免下载体转换为字符串,并保持在一个二进制缓冲区。

3. 这里有一个工作示例(使用节点请求模块)gunzips响应function gunzipJSON(response){

var gunzip = zlib.createGunzip();
var json = "";

gunzip.on('data', function(data){
json += data.toString();
});

gunzip.on('end', function(){
parseJSON(json);
});

response.pipe(gunzip);
}

全码:

4. 像@Iftah说,设置encoding: null。 完整的例子(少错误处理):request = require('request');
zlib = require('zlib');

request(url, {encoding: null}, function(err, response, body){

if(response.headers['content-encoding'] == 'gzip'){

zlib.gunzip(body, function(err, dezipped) {
callback(dezipped.toString());
}

} else {
callback(body);
}
});
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
多大的电机容量必须加装电抗器?
【awful是什么意思】awful是什么意思例句引申
田庄子村地址有知道的么?有点事想过去
canon lbp2900 打印机打印时出现错误,提示扫
为什么微信头像不更新
有部电影主人公拥有不死之身,每次死亡都会在
48v20ah的电瓶,装到一个原本60v20ah的电动车
什么叫组播地址
河南省邮政速递物流有限公司许昌市火车站揽投
美女与野兽2017版的百度云,最好是高清的
()不是银行认可的个人汽车贷款的担保措施。A.
中国参加与国际反恐合作有什么重要意义
用人单位可以给非全日制劳动者缴纳五险一金吗
名通汽车维修中心在什么地方啊,我要过去处理
想送女朋友一盆盆栽,送什么好
推荐资讯
利民一锅鲜在什么地方啊,我要过去处理事情
无论“焚书坑儒”,还是“罢黜百家,表彰六经
工程竣工验收和竣工文件资料的归档应由(  
请问捷信贷款如果提前一次性还款,只收取余后
满族关姓族谱
广州北京路有冇大型商场
08年时买人寿险只买了主险没有添加附加险,请
门牙有牙缝怎么办
长岛县交警大队车管所这个地址在什么地方,我
如何教小朋友学拼音
工业集聚可以降低生产成本,提高经济效益。对
自己唱歌听还可以但是录音下来就难听了
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?