gpt4 book ai didi

amazon-web-services - 如何检查存储桶是否已存在于 AWS S3 中

转载 作者:行者123 更新时间:2023-12-03 23:05:35 24 4
gpt4 key购买 nike

如何使用 Java SDK 检查存储桶是否已存在于我的 Aws S3 帐户中?
使用下面的代码

        AmazonS3ClientBuilder.defaultClient().doesBucketExistV2(bucketName);
检查存储桶的全局存在,如果具有此名称的存储桶在全局存在,则返回 true,即使我不是此存储桶的所有者或我无权访问该存储桶。
我理解以这种方式制作此方法的意图,以便它允许我们确定存储桶名称的可用性,但这不是我所需要的。
当然,它会抛出异常,我以后无法访问它,但它会返回声明具有此名称的存储桶存在。
我想检查是否具有给定名称的存储桶 存在于我的 S3 帐户中 以便我可以对其进行操作。
一种可能的解决方案是 list所有存储桶并在返回的列表中搜索我的存储桶,我觉得这在性能方面不是很好(如果我错了,请纠正我),因为可能有数十万个存储桶并且在其中搜索效率不高。
如何确定 存储桶存在于我的 S3 帐户中,不检查全局是否存在 ?

最佳答案

如评论中所述 headBucket做这项工作。

HeadBucketRequest headBucketRequest = HeadBucketRequest.builder()
.bucket(bucketName)
.build();

try {
s3Client.headBucket(headBucketRequest);
return true;
} catch (NoSuchBucketException e) {
return false;
}

关于amazon-web-services - 如何检查存储桶是否已存在于 AWS S3 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62940476/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com