0

我需要获取具有客户端accessKeyId和secretAccessKey的存储桶列表。从文档中,我了解到我必须更新AWS的配置,创建一个新的S3对象,然后用回调调用listBuckets()函数。如何使用amazon-javascript-sdk列出AWS S3存储桶?

所以,这里是我的代码:

AWS.config.update({ 
     accessKeyId: awsKey.identifier, secretAccessKey: awsKey.secret, region: awsKey.region, 
     apiVersion: '2006-03-01' 
    }); 

let s3 = new AWS.S3(); 
s3.listBuckets((response, data) => { 
    console.log(response); 
    console.log(data); 
}); 

的问题是,我得到: enter image description here

感谢您的关注

回答

-1

您需要的文件的权限设置为公共或任何获授权用户使用任何用户定义密钥,同时将文件上传到亚马逊桶。 上传文件时,可以选择设置权限。感谢, Saurabh。

-1

您可能需要为您的存储桶配置CORS。请参阅AWS文档:Configuring CORS for an Amazon S3 Bucket

+0

好,但我不会在我的例子试图访问特定的桶,我只是想看看在指定的账户中可用的桶的名称。因此,逻辑上它与桶的CORS设置无关。如果某个存储桶没有启用CORS,则它不应出现在响应中,但我在请求中出现错误。 –

+0

我认为,但我错了,产生桶列表的AWS服务会评估每个桶上的CORS策略,并将其列入用户可能访问的列表中。但是,如前所述,我错了。 – MatteoSp