【发布时间】:2023-02-09 01:58:10
【问题描述】:
我想知道是否可以使用 Node 标准库中的 https.get() 下载 zip 并将其直接解压缩到子文件夹中。
我找到了许多先下载 zip 然后再解压缩的解决方案。但是有没有办法直接做呢?
这是我的尝试:
const zlib = require("node:zlib");
const fs = require("fs");
const { pipeline } = require("node:stream");
const https = require("https");
const DOWNLOAD_URL =
"https://downloadserver.com/data.zip";
const unzip = zlib.createUnzip();
const output = fs.createWriteStream("folderToExtract");
https.get(DOWNLOAD_URL, (res) => {
pipeline(res, unzip, output, (error) => {
if (error) console.log(error);
});
});
但我收到此错误:
错误:标头检查不正确
在 Zlib.zlibOnError [as onerror] (node:zlib:189:17) {
错误号:-3,
代码:'Z_DATA_ERROR'
}我很好奇,这甚至可能吗?
【问题讨论】: