我使用的是节点提取库,默认情况下它会解压缩响应。我想发出一个POST请求,返回gzipped内容,并通过管道将POST请求响应发送到响应。
我目前使用的代码在这里:
router.post('/getData', async(request, response) => {
fetch(`http://url:port/path`, { method: 'POST', headers: {'Accept-Encoding': 'gzip'}, body: ''})
.then(data=> {
return data.body.pipe(response);
}
}
}
我知道节点提取库默认情况下会解压缩数据。我不需要这个。我想直接使用流传递压缩数据。(像代理一样(
对我有效的是设置compress=false
,然后添加标头以接受gzip编码:
fetch(url, {
compress: false,
headers: { "accept-encoding": "gzip" },
});