Huawei Cloud Object Storage (OBS) signale une erreur lors de la création d'un compartiment : la contrainte d'emplacement est incompatible pour le point de terminaison spécifique à la région ce...

Enregistrer le problème de création d'un compartiment lors de la connexion à Huawei Cloud Object Storage (OBS) et signaler une erreur

1. Configuration de la connexion

String endPoint = "https://xxx";
String ak = "xxx";
String sk = "xxx";

String bucketName = "bucket-test";

// 创建ObsClient实例
ObsClient obsClient = new ObsClient(ak, sk, endPoint);


2. Créez un compartiment de la manière suivante et signalez une erreur

obsClient.createBucket("bucket-test-1");


3. Le message d'erreur est le suivant

Exception in thread "main" com.obs.services.exception.ObsException: Error message:Request Error.OBS servcie Error Message. -- ResponseCode: 400, ResponseStatus: Bad Request, XML Error Message: <?xml version="1.0" encoding="UTF-8" standalone="yes"?><Error><Code>IllegalLocationConstraintException</Code><Message>The  location constraint is incompatible for the region specific endpoint this request was sent to.</Message><RequestId>0000018909ED4AE69016DDDDA5E2EE01</RequestId><HostId>jLMnfYgdZF1ysqKosldBXo9st+ReJM71SQF6LefpWIBKo2h3//o+OFrn/s2RLhlE</HostId></Error>
	at com.obs.services.internal.utils.ServiceUtils.changeFromServiceException(ServiceUtils.java:533)
	at com.obs.services.AbstractClient.doActionWithResult(AbstractClient.java:402)
	at com.obs.services.AbstractBucketClient.createBucket(AbstractBucketClient.java:106)
	at com.obs.services.AbstractBucketClient.createBucket(AbstractBucketClient.java:94)
	at com.obs.services.AbstractBucketClient.createBucket(AbstractBucketClient.java:64)
	at Test.main(Test.java:28)


4. Raison :创建存储桶时没有为存储桶指定区域

Le endPoint utilisé dans la configuration d'amarrage = "https://obs.cn-south-1.myhuaweicloud.com"

Parmi eux cn-south-1se trouve celui qui peut être utilisé lors de la création d'un seau区域

注:创建存储桶是指定的区域要与"endPoint"上的区域一致,不能使用其他区域


5. Spécifiez simplement la région du bucket lors de sa création

CreateBucketRequest request = new CreateBucketRequest();
// 名称要求很奇怪,老是不合法,多试几次
request.setBucketName("test-222222");
// 设置桶区域位置(以区域为“华南-广州一”为例)
// 注:指定的区域要与"endPoint"上的区域一致,不能使用其他区域
request.setLocation("cn-south-1");
// 创建桶成功
obsClient.createBucket(request);

おすすめ

転載: blog.csdn.net/weixin_52116015/article/details/131469892