Java AWS SDK的me-central-1区域出现问题

vxf3dgd4  于 2023-02-11  发布在  Java
关注(0)|答案(1)|浏览(116)

我尝试使用aws sdk for java(这不是第一次,它总是工作),但我得到这个错误:

亚马逊网站异常:未指定的位置约束与此请求发送到的区域特定终结点不兼容

在我的pom我有这个maven依赖

<dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk-s3</artifactId>
    <version>1.12.402</version>
</dependency>

这是我示例化S3客户端的代码:

@Bean
public AmazonS3 amazonS3() {
    AWSCredentials cred = new BasicAWSCredentials(accesskey, secretkey);
    AWSCredentialsProvider credProvider = new AWSStaticCredentialsProvider(cred);
    return AmazonS3Client.builder()
            .withRegion(Regions.ME_CENTRAL_1)
            //.withCredentials(credProvider)
            .withCredentials(DefaultAWSCredentialsProviderChain.getInstance())
            .build();
}

如您所见,我尝试了两种不同的AWSCredentialsProviders,但总是得到相同的错误

pdtvr36n

pdtvr36n1#

对于在us-east-1(N. Virginia)以外的区域创建的存储桶,需要位置约束。有关详细信息,请参阅https://docs.aws.amazon.com/cli/latest/reference/s3api/create-bucket.html
LocationConstraint -〉(字符串)指定将创建时段的区域。如果不指定区域,则在美国东部(N. Virginia)区域(us-east-1)创建时段。

相关问题