InvalidLocationConstraint 使用 node.js aws-sdk 在 af-south-1(开普敦)区域创建存储桶

InvalidLocationConstraint creating a bucket in af-south-1 (Cape Town) region using node.js aws-sdk

我尝试使用 node.js aws-sdk 在 af-south-1(开普敦)区域创建 S3 存储桶时遇到 InvalidLocationConstraint: The specified location-constraint is not valid 错误,版本为 2.726.0 (当时最新)。

区域已启用,我可以使用管理控制台创建存储桶。我用于调试的 IAM 用户在帐户中具有完全管理访问权限。

我的创建存储桶调用是:

let res = await s3.createBucket({
  Bucket: 'bucketname',
  CreateBucketConfiguration: { LocationConstraint: 'af-south-1' }
}).promise();

这适用于 af-south-1 以外的地区。

documentation 中给出了一个位置限制列表,这个列表是所有可能选项的详尽列表,还是只是一个示例列表?

是否可以使用 sdk 在 af-south-1 中创建存储桶,还是我做错了什么?

这类似于 question

较新的 AWS 区域仅支持区域端点。因此,如果在多个区域中创建存储桶,则需要为每个区域创建一个新的 S3 实例 class 如果您使用的是较新的区域之一:

  const s3 = new AWS.S3({
    region: 'af-south-1',
  });