控制台指南

最佳实践

开发者指南

API 文档

SDK 文档

存储桶操作

最近更新时间:2021-06-07 17:51:17

简介

本文档提供关于存储桶的基本操作 API 概览以及 SDK 示例代码。

API 操作名 操作描述
GET Service (List Buckets) 查询存储桶列表 查询指定账号下所有的存储桶列表
PUT Bucket 创建存储桶 在指定账号下创建一个存储桶
HEAD Bucket 检索存储桶及其权限 检索存储桶是否存在且是否有权限访问
DELETE Bucket 删除存储桶 删除指定账号下的空存储桶

查询存储桶列表

功能说明

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

方法原型

public List<Bucket> listBuckets() throws CosClientException, CosServiceException;

请求示例

// 如果只调用 listBuckets 方法,则创建 cosClient 时指定 region 为 new Region("") 即可
List<Bucket> buckets = cosClient.listBuckets();
for (Bucket bucketElement : buckets) {
   String bucketName = bucketElement.getName();
   String bucketLocation = bucketElement.getLocation();
}

参数说明

返回结果说明

  • 成功:返回一个 所有 Bucket 类的列表,Bucket 类包含了 bucket 成员,location 等信息。
  • 失败:发生错误(如 Bucket 不存在),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理

创建存储桶

功能说明

在指定账号下创建一个存储桶。同一用户账号下,可以创建多个存储桶,数量上限是200个(不区分地域),存储桶中的对象数量没有限制。创建存储桶是低频操作,一般建议在控制台创建 Bucket,在 SDK 进行 Object 的操作。

方法原型

public Bucket createBucket(String  bucketName) throws CosClientException, CosServiceException;

请求示例

String bucket = "examplebucket-1250000000"; //存储桶名称,格式:BucketName-APPID
CreateBucketRequest createBucketRequest = new CreateBucketRequest(bucket);
// 设置 bucket 的权限为 Private(私有读写), 其他可选有公有读私有写, 公有读写
createBucketRequest.setCannedAcl(CannedAccessControlList.Private);
Bucket bucketResult = cosClient.createBucket(createBucketRequest);

参数说明

参数名称 描述 类型
bucketName Bucket 的命名规则为 BucketName-APPID,详情请参见 存储桶概述 String

返回结果说明

  • 成功: Bucket 类,包含有关 Bucket 的描述(Bucket 的名称,owner 和创建日期)。
  • 失败: 发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理

检索存储桶及其权限

功能说明

检索存储桶是否存在且是否有权限访问。

方法原型

public boolean doesBucketExist(String bucketName) 
throws CosClientException, CosServiceException;

请求示例

// bucket的命名规则为 BucketName-APPID ,此处填写的存储桶名称必须为此格式
String bucketName = "examplebucket-1250000000";
boolean bucketExistFlag = cosClient.doesBucketExist(bucketName);

参数说明

参数名称 描述 类型
bucketName Bucket 的命名规则为 BucketName-APPID,详情请参见 存储桶概述 String

返回结果说明

  • 成功:存在返回 true,否则 false。
  • 失败:发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理

删除存储桶

功能说明

删除指定账号下的空存储桶。

方法原型

public void deleteBucket(String bucketName) throws CosClientException, CosServiceException;

请求示例

// bucket的命名规则为 BucketName-APPID ,此处填写的存储桶名称必须为此格式
String bucketName = "examplebucket-1250000000";
cosClient.deleteBucket(bucketName);

参数说明

参数名称 描述 类型
bucketName Bucket 的命名规则为 BucketName-APPID,详情请参见 存储桶概述 String

返回结果说明

  • 成功:无返回值。
  • 失败:发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理
目录