Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何使用s3键属性使用node js将二进制文件上载到s3_Node.js_Amazon S3 - Fatal编程技术网

Node.js 如何使用s3键属性使用node js将二进制文件上载到s3

Node.js 如何使用s3键属性使用node js将二进制文件上载到s3,node.js,amazon-s3,Node.js,Amazon S3,我需要从s3 bucket下载并提取tar.gz文件,然后上传到另一个bucket。文件已正确下载,结果将使用s3.getObject作为二进制数据返回 我需要将二进制数据(文件)传递到s3存储桶,以便使用s3.putOBject进行上传 但是我不知道当我们将二进制文件推送到s3.putOBject时,名“Key”参数在s3.putOBject中应该给出什么。请帮帮我 这是我的代码 var bucketName = "my.new.Bucket-Latest"; var fileKey = "

我需要从s3 bucket下载并提取tar.gz文件,然后上传到另一个bucket。文件已正确下载,结果将使用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);
            });
        }
    });
  }
});

甚至你自己的代码也说,关键是文件名。只需生成一些文件名并分配给key属性。它就像文件系统。当你创建一个新文件时,你应该给它起个名字。

我可以给单个文件起个名字。但是我正在以二进制文件的形式上传多个文件,在这种情况下我可以给什么名字?请建议我给ManyFilesArchived.gz起个名字怎么样?我告诉过你们和文件系统一样的事情,bucket就是“文件夹”。我应该迭代二进制文件中的每个文件并分配给key吗?请帮助我如何进行详细?