1
我想压缩文件并将二进制输出转储到AWS S3。我首先测试了我的代码,确保它甚至可以写入本地ZIP文件,该文件不起作用。如何将从zip到Node.js的二进制流写入S3
function zipFiles(filenames) {
return new Promise((resolve, reject) => {
const child = spawn(zipCmd, ['-'].concat(filenames));
let buffer = '';
child.stdout.on('data', (data) => {
buffer += data.toString();
});
child.stderr.on('data', (data) => {
// console.error(data.toString());
});
child.on('close', (code) => {
fs.writeFileSync('testing.zip', buffer);
resolve(code);
});
});
}
这会导致压缩的zip文件。我不确定如何处理来自spawn
的缓冲流并将其组装成可与s3.putObject
和fs.writeFileSync
(作为测试方法)一起使用的东西。