使用节点 js 从 aws S3 获取多个图像

问题描述

我正在尝试从 S3 存储桶文件夹中获取所有图像。我使用 s3.listObjectsV2 获取密钥并使用 s3.geObjects 获取图像。下面是我的代码

router.route('/getimages/').post((req,res) => {
   var result = [];
   var params = { Bucket: 'bucketName',Prefix: 'parent_folder/child_folder'};
   s3.listObjectsV2(params,(err,data) => {
       if (err === null) { 
          data.Contents.map(item=>{
              var getParam = { Bucket: 'bucketName',Key: item.Key};
              s3.getobject(getParam,function (err,resp) {
                 if (err === null) {
                     result += resp.Body
                     console.log(result) // consoles the result
                 } else {
                     res.send(err)
                 }
             });
         })
         res.send(result) // sends empty array
         console.log(result) // consoles empty array
     }else{
         return res.send({ "error": err });
     }
})

此外,我必须将响应中的图像显示到前端 React。 S3 中的图像不是公开的,我不能使用 URL,我必须 FS 读取 resp.body 请帮忙

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)