tencent cloud

文档反馈

存储桶操作

最后更新时间:2024-01-04 15:52:02

    简介

    本文档提供关于存储桶基本操作的相关 API 概览以及 SDK 示例代码。
    API
    操作名
    操作描述
    查询存储桶列表
    查询指定账号下所有的存储桶列表
    创建存储桶
    在指定账号下创建一个存储桶
    检索存储桶及其权限
    检索存储桶是否存在且是否有权限访问
    删除存储桶
    删除指定账号下的空存储桶

    SDK API 参考

    SDK 所有接口的具体参数与方法说明,请参考 SDK API 参考

    查询存储桶列表

    功能说明

    用于查询指定账号下所有存储桶列表。

    示例代码

    GetServiceRequest getServiceRequest = new GetServiceRequest();
    cosXmlService.getServiceAsync(getServiceRequest, new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
    GetServiceResult getServiceResult = (GetServiceResult) result;
    }
    
    // 如果您使用 kotlin 语言来调用,请注意回调方法中的异常是可空的,否则不会回调 onFail 方法,即:
    // clientException 的类型为 CosXmlClientException?,serviceException 的类型为 CosXmlServiceException?
    @Override
    public void onFail(CosXmlRequest cosXmlRequest,
    @Nullable CosXmlClientException clientException,
    @Nullable CosXmlServiceException serviceException) {
    if (clientException != null) {
    clientException.printStackTrace();
    } else {
    serviceException.printStackTrace();
    }
    }
    });
    说明
    更多完整示例,请前往 GitHub 查看。

    创建存储桶

    功能说明

    创建一个存储桶(PUT Bucket)。

    示例代码

    // 存储桶名称,由bucketname-appid 组成,appid必须填入,可以在COS控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    PutBucketRequest putBucketRequest = new PutBucketRequest(bucket);
    cosXmlService.putBucketAsync(putBucketRequest, new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
    PutBucketResult putBucketResult = (PutBucketResult) result;
    }
    
    // 如果您使用 kotlin 语言来调用,请注意回调方法中的异常是可空的,否则不会回调 onFail 方法,即:
    // clientException 的类型为 CosXmlClientException?,serviceException 的类型为 CosXmlServiceException?
    @Override
    public void onFail(CosXmlRequest cosXmlRequest,
    @Nullable CosXmlClientException clientException,
    @Nullable CosXmlServiceException serviceException) {
    if (clientException != null) {
    clientException.printStackTrace();
    } else {
    serviceException.printStackTrace();
    }
    }
    });
    说明
    更多完整示例,请前往 GitHub 查看。

    检索存储桶及其权限

    功能说明

    HEAD Bucket 请求可以确认该存储桶是否存在,是否有权限访问。有以下几种情况:
    存储桶存在且有读取权限,返回 HTTP 状态码为200。
    无存储桶读取权限,返回 HTTP 状态码为403。
    存储桶不存在,返回 HTTP 状态码为404。

    示例代码

    // 存储桶名称,由bucketname-appid 组成,appid必须填入,可以在COS控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    HeadBucketRequest headBucketRequest = new HeadBucketRequest(bucket);
    cosXmlService.headBucketAsync(headBucketRequest, new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
    HeadBucketResult headBucketResult = (HeadBucketResult) result;
    }
    
    // 如果您使用 kotlin 语言来调用,请注意回调方法中的异常是可空的,否则不会回调 onFail 方法,即:
    // clientException 的类型为 CosXmlClientException?,serviceException 的类型为 CosXmlServiceException?
    @Override
    public void onFail(CosXmlRequest cosXmlRequest,
    @Nullable CosXmlClientException clientException,
    @Nullable CosXmlServiceException serviceException) {
    if (clientException != null) {
    clientException.printStackTrace();
    } else {
    serviceException.printStackTrace();
    }
    }
    });
    说明
    更多完整示例,请前往 GitHub 查看。

    删除存储桶

    功能说明

    删除指定的存储桶(DELETE Bucket)。
    注意
    删除存储桶前,请确保存储桶内的数据和未完成上传的分块数据已全部清空,否则会无法删除存储桶。

    示例代码

    // 存储桶名称,由bucketname-appid 组成,appid必须填入,可以在COS控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    DeleteBucketRequest deleteBucketRequest = new DeleteBucketRequest(bucket);
    cosXmlService.deleteBucketAsync(deleteBucketRequest,
    new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
    DeleteBucketResult deleteBucketResult = (DeleteBucketResult) result;
    }
    
    @Override
    public void onFail(CosXmlRequest cosXmlRequest,
    @Nullable CosXmlClientException clientException,
    @Nullable CosXmlServiceException serviceException) {
    if (clientException != null) {
    clientException.printStackTrace();
    } else {
    serviceException.printStackTrace();
    }
    }
    });
    说明
    更多完整示例,请前往 GitHub 查看。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持