我需要从 s3存储桶下载并解压 tar.gz 文件并上传到另一个存储桶。文件正确下载并且结果使用 s3.getObject 返回二进制数据。
我需要将二进制数据(文件)传递到 s3 存储桶,使用 s3.putOBject 进行上传。
但是当我们推送名称”必须为 s3.putOBject 中的“Key”参数提供什么>二进制文件到s3.putObject 。请帮助我。
这是我的代码
var bucketName = "my.new.Bucket-Latest";
var fileKey = "Employee.tar.gz";
var params = { Bucket: bucketName, Key: fileKey };
s3.getObject(params, function(err, data,callback) {
if (err) {
console.log(err);
callback(err);
}
else {
zlib.gunzip(data.Body, function (err, result) {
if (err) {
console.log(err);
} else {
var extractedData = result;
s3.putObject({
Bucket: "bucketName",
Key: " ",
Body: extractedData,
ContentType: 'content-type'
}, function (err) {
console.log('uploaded file: ' + err);
});
}
});
}
});
答案 0 :(得分:0)
即使你自己的代码说,那个键是文件名。只需生成一些文件名并分配给key属性。它就像文件系统。在创建新文件时,您应该为其指定一些名称。