1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 head_bucket
函数会自动在后台重定向到正确的区域,因此无论从哪个区域调用它,x-amz-bucket-region
标头始终将是存储桶的区域。
将条件更改为以下内容应给出所需的输出:
if client.head_bucket(Bucket=bucket['Name'])['ResponseMetadata']['HTTPHeaders']['x-amz-bucket-region'] == reg:
然而,像那样遍历每个区域会产生许多不必要的请求,因此可能值得查看get_bucket_location
函数,该函数返回LocationConstraint
值,正如您所发现的,对于位于us-east-1的存储桶,该值为None
。任何其他区域的存储桶都应返回实际的区域名称。只需遍历所有桶一次并在每个桶上调用get_bucket_location
即可加快响应速度。
相关内容
- AWS 官方已更新 10 个月前
- AWS 官方已更新 2 年前
- AWS 官方已更新 2 年前
- AWS 官方已更新 2 年前