首页 > 解决方案 > InvalidLocationConstraint 使用 node.js aws-sdk 在 af-south-1(开普敦)区域创建存储桶

问题描述

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

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

我的创建存储桶调用是:

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

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

文档中,给出了一个位置约束列表,这个列表是所有可能选项的详尽列表,还是只是一个示例列表?

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

这类似于这个问题

标签: node.jsamazon-web-servicesamazon-s3aws-sdk-nodejs

解决方案


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

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

推荐阅读