创建存储空间(Android)

最近更新时间:2023-01-12 11:52:17

Create Bucket 创建存储空间

以下代码用于创建存储空间:

// 创建指定名称的存储空间

// 设置权限列表
AccessControlList acl = new AccessControlList();

// 例如设置用户id为12345678的用户对object的读权限
// 创建权限对象
Grant grant1 = new Grant(); 
// 创建用户id对象
GranteeId id = new GranteeId(); 
id.setIdentifier("12345678");
// 设置用户id
grant1.setGrantee(id);
// 设置权限,其中Permission为枚举类型
grant1.setPermission(Permission.Read); 
// 将权限信息添加到控制列表中,此处可以添加多个权限对象,能够为每个指定的用户id添加对应的权限
acl.addGrant(grant1); 


client.createBucket("<bucketName>", acl, new CreateBucketResponceHandler() {
    @Override
    public void onFailure(int statesCode, Ks3Error error, Header[] responceHeaders, String response, Throwable paramThrowable) {
	// 请求失败 bucket名字不符合需求, 会抛出IllegalArgumentException
    }

    @Override
    public void onSuccess(int statesCode, Header[] responceHeaders) {
	// 请求成功
    }
});

上述代码在创建Bucket时,指定了Bucket的ACL。当然,你也可以通过下面的方式设置既定的权限:

// CannedAccessControlList[PublicRead/Private/PublicReadWrite]
CannedAccessControlList cannedAcl = CannedAccessControlList.PublicReadWrite;
client.createBucket("<bucketName>", cannedAcl, new CreateBucketResponceHandler() {
    @Override
    public void onFailure(int statesCode, Ks3Error error, Header[] responceHeaders, String response, Throwable paramThrowable) {
	// 请求失败
    }

    @Override
    public void onSuccess(int statesCode, Header[] responceHeaders) {
	// 请求成功
    }
});
  • 同一用户创建的存储空间总数不能超过100个
  • 创建Bucket时可以选择Bucket ACL权限,如果不设置ACL,默认是private。
  • 存储空间一旦创建成功,名称、所处地域不能修改
  • 存储空间的名称在KS3服务内全局唯一
  • 单个存储空间的容量无限制

存储空间的命名规范请参见存储空间基本操作
您可以在创建存储空间时指定存储空间的权限存储类型

文档内容是否对您有帮助?

根本没帮助
文档较差
文档一般
文档不错
文档很好

在文档使用中是否遇到以下问题

内容不全,不深入
内容更新不及时
描述不清晰,比较混乱
系统或功能太复杂,缺乏足够的引导
内容冗长

更多建议

0/200

评价建议不能为空

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

问题反馈