IBM Cloud COS:使用S3 API get-bucket-location返回未找到的存储桶

时间:2018-12-06 13:12:13

标签: ibm-cloud object-storage

我正在使用IBM Cloud COS的S3 API,并且在get-bucket-location中遇到意外的存储桶找不到错误。

我的存储桶位于us-south地区,并显示s3 ls命令,但获取该地区失败。我正在使用Java AWS api,但是可以使用aws cli来重现它。

[08:07] jwilliams:~ $ aws --profile ibm --endpoint-url https://s3-api.us-geo.objectstorage.softlayer.net s3api get-bucket-location --bucket s3-wzd-dv-integrationtest-so-1

An error occurred (NoSuchBucket) when calling the GetBucketLocation operation: The specified bucket does not exist.

[08:07] jwilliams:~ $ aws  --profile ibm --endpoint-url https://s3-api.us-geo.objectstorage.softlayer.net s3 ls
2018-12-05 10:06:00 s3-wzd-dv-integrationtest-ea-1
2018-12-05 10:04:51 s3-wzd-dv-integrationtest-so-1
2018-11-29 15:59:19 wzd-jw-bucket-1
2018-11-29 16:14:55 wzd-jw-bucket-2

1 个答案:

答案 0 :(得分:1)

当您创建“区域”存储桶而不是“跨区域”存储桶时,会发生此类错误。您可以从IBM Cloud控制台验证存储桶的位置。存储桶->配置还将为您提供可以使用的公共URL。

根据地区,尝试以下操作:

aws  --profile ibm --endpoint-url https://s3.us-east.objectstorage.softlayer.net s3 ls

aws  --profile ibm --endpoint-url https://s3.us-south.objectstorage.softlayer.net s3 ls