AWS S3 REST API:响应GET存储区位置调用时出错

时间:2016-08-24 09:13:05

标签: amazon-s3

我们正在使用" us-east-1"生成的V4签名执行GET bucket location call以下URL格式的区域:

https://s3.amazonaws.com/my-bucket-name?location

有时,它会以下列格式返回错误:

<?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>AuthorizationHeaderMalformed</Code>
    <Message>The authorization header is malformed; the region 'us-east-1' is wrong; expecting 'us-west-1'</Message>
    <Region>us-west-1</Region>
    <RequestId>A1A1</RequestId>
    <HostId>B1B1</HostId>
</Error>

我的问题:

  1. 该地区是&#39; us-west-1&#39; &#34;地区&#34;标记桶的正确位置?
  2. 或者是否要求我们使用此区域生成的新V4签名再次进行GET存储区位置调用(当前示例中为us-west-1)?
  3. 我们可以针对不同地区的各种存储桶同时进行多个GET存储区域调用吗?
  4. 编辑(2016年8月25日IST): 添加了上面的Que#3。

    编辑(2016年9月8日IST): 这是多线程的错误代码。没问题来自S3。 问题得到解决。 让我知道如何结束这个问题。

1 个答案:

答案 0 :(得分:0)

按顺序进行呼叫成功。

仅当并行发出请求时,才发生错误。这是我代码本身的多线程错误,无法在请求中正确设置值。