检查前缀是否在源端桶中存在
功能介绍
检查前缀是否在源端桶中存在
调用方法
请参见如何调用API。
URI
POST /v2/{project_id}/objectstorage/buckets/prefix
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID 最小长度:1 最大长度:1024 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
IAM Token认证,需要确认Token中包含的Project ID与请求URI中修改资源的Project ID匹配。 最小长度:1 最大长度:16384 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
cloud_type |
是 |
String |
云类型 AWS:亚马逊 Aliyun:阿里云 Qiniu:七牛云 QingCloud:青云 Tencent:腾讯云 Baidu:百度云 KingsoftCloud:金山云 Azure:微软云 UCloud:优刻得 HuaweiCloud:华为云 Google: 谷歌云 URLSource:URL HEC:HEC 缺省值:Aliyun 最小长度:0 最大长度:100 |
ak |
否 |
String |
源端桶的AK(最大长度100个字符),task_type为非url_list时,本参数为必选。 最小长度:0 最大长度:100 |
sk |
否 |
String |
源端桶的SK(最大长度100个字符),task_type为非url_list时,本参数为必选。 最小长度:0 最大长度:100 |
json_auth_file |
否 |
String |
用于谷歌云Cloud Storage鉴权 最小长度:0 最大长度:65535 |
app_id |
否 |
String |
当源端为腾讯云时,会返回此参数。 最小长度:0 最大长度:255 |
bucket_name |
是 |
String |
桶名 最小长度:0 最大长度:100 |
file_name |
是 |
String |
前缀名称 最小长度:0 最大长度:1024 |
data_center |
是 |
String |
数据中心,区域 最小长度:0 最大长度:100 |
security_token |
否 |
String |
安全令牌 最小长度:0 最大长度:16384 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
exist |
Boolean |
是否存在 缺省值:false |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error_msg |
String |
错误信息。 |
error_code |
String |
错误码。 |
请求示例
检查xxxx的前缀是否在xxx桶中存在
POST https://{endpoint}/v2/{project_id}/objectstorage/buckets/prefix { "cloud_type" : "HuaweiCloud", "ak" : "xxxxak", "sk" : "xxxxsk", "app_id" : "apptest123", "bucket_name" : "xxx", "file_name" : "xxxx", "data_center" : "cn-north-x", "security_token" : "string" }
响应示例
状态码: 200
校验前缀响应体
{ "exist" : true }
SDK代码示例
SDK代码示例如下。
检查xxxx的前缀是否在xxx桶中存在
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.oms.v2.region.OmsRegion; import com.huaweicloud.sdk.oms.v2.*; import com.huaweicloud.sdk.oms.v2.model.*; public class CheckPrefixSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); OmsClient client = OmsClient.newBuilder() .withCredential(auth) .withRegion(OmsRegion.valueOf("<YOUR REGION>")) .build(); CheckPrefixRequest request = new CheckPrefixRequest(); CheckPrefixReq body = new CheckPrefixReq(); body.withAppId("apptest123"); body.withDataCenter("cn-north-x"); body.withAk("xxxxak"); body.withSk("xxxxsk"); body.withBucketName("xxx"); body.withFileName("xxxx"); body.withSecurityToken("string"); body.withCloudType("HuaweiCloud"); request.withBody(body); try { CheckPrefixResponse response = client.checkPrefix(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } } |
检查xxxx的前缀是否在xxx桶中存在
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkoms.v2.region.oms_region import OmsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkoms.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] credentials = BasicCredentials(ak, sk) client = OmsClient.new_builder() \ .with_credentials(credentials) \ .with_region(OmsRegion.value_of("<YOUR REGION>")) \ .build() try: request = CheckPrefixRequest() request.body = CheckPrefixReq( app_id="apptest123", data_center="cn-north-x", ak="xxxxak", sk="xxxxsk", bucket_name="xxx", file_name="xxxx", security_token="string", cloud_type="HuaweiCloud" ) response = client.check_prefix(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
检查xxxx的前缀是否在xxx桶中存在
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" oms "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/oms/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/oms/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/oms/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := oms.NewOmsClient( oms.OmsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.CheckPrefixRequest{} appIdCheckPrefixReq:= "apptest123" akCheckPrefixReq:= "xxxxak" skCheckPrefixReq:= "xxxxsk" securityTokenCheckPrefixReq:= "string" request.Body = &model.CheckPrefixReq{ AppId: &appIdCheckPrefixReq, DataCenter: "cn-north-x", Ak: &akCheckPrefixReq, Sk: &skCheckPrefixReq, BucketName: "xxx", FileName: "xxxx", SecurityToken: &securityTokenCheckPrefixReq, CloudType: "HuaweiCloud", } response, err := client.CheckPrefix(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
状态码 |
描述 |
---|---|
200 |
校验前缀响应体 |
400 |
标准错误响应体。 |
错误码
请参见错误码。