如何解决zlib.Unzip引发文件错误意外结束
我的Express应用程序中有一个响应,其中似乎包含压缩数据。经过一番研究,发现zlib是一种解压缩选项。但是,我没有尝试过。
我找到了以下示例代码:
const gunzip = zlib.Unzip(); // originally used zlib.createUnzip()
const jsonString = '';
response.pipe(gunzip); // piping response or response.body doesn't work
gunzip.on('data',function (chunk) {
jsonString += chunk;
});
gunzip.on('end',function () {
console.log('End of decomp .... ');
console.log((jsonString));
});
gunzip.on('error',function (e) {
console.log('Decomp Error :: ',e);
});
这会产生以下错误(主体部分被截断以便于阅读)
body: '\u001f�\b\u0000\u0000\u0000\u0000\u0000\u0000\u0013��n\u001a1\u0010�_��yU.... [Symbol(kCapture)]: false } Error: unexpected end of file at Zlib.zlibOnError [as onerror] (zlib.js:180:17) { errno: -5,code: 'Z_BUF_ERROR' }
我还尝试了zlib.createUnzip
并将response.body
传递到pipe()
,该错误给出了“ .pipe不是函数”错误。由于正文是包含压缩信息的唯一部分,因此我试图找到一种方法来传递该信息,而不是传递整个响应,但无法使其正常工作。
这是我第一次必须在Node中进行压缩/解压缩,所以我可能忽略了一些简单的事情。非常感谢您的帮助。
编辑
我也尝试了this帖子中包含的建议。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。