Bucket 是 OSS 上的命名空间,也是计费、权限控制、日志记录等高级功能的管理实体;Bucket 名称在整个 OSS 服务中具有全局唯一性,且不能修改;存储在 OSS 上的每个 Object 必须都包含在某个 Bucket 中。
新建Bucket
以下代码可以新建一个Bucket:CreateBucketRequest createBucketRequest = new CreateBucketRequest("<bucketName>");createBucketRequest.setBucketACL(CannedAccessControlList.PublicRead); // 指定Bucket的ACL权限createBucketRequest.setLocationConstraint("oss-cn-hangzhou"); // 指定Bucket所在的数据中心OSSAsyncTask createTask = oss.asyncCreateBucket(createBucketRequest, new OSSCompletedCallback<CreateBucketRequest, CreateBucketResult>() {@Overridepublic void onSuccess(CreateBucketRequest request, CreateBucketResult result) {Log.d("locationConstraint", request.getLocationConstraint());}@Overridepublic void onFailure(CreateBucketRequest request, ClientException clientException, ServiceException serviceException) {// 请求异常if (clientException != null) {// 本地异常如网络异常等clientException.printStackTrace();}if (serviceException != null) {// 服务异常Log.e("ErrorCode", serviceException.getErrorCode());Log.e("RequestId", serviceException.getRequestId());Log.e("HostId", serviceException.getHostId());Log.e("RawMessage", serviceException.getRawMessage());}}});
上述代码在创建bucket时,指定了Bucket的ACL和所在的数据中心。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
您已经详细描述了在阿里云对象存储(OSS)中创建、获取以及删除Bucket的操作方法,包括使用Java SDK进行操作的示例代码。这里我再补充一些关键点和建议,帮助您更好地理解和管理OSS中的Bucket。
private
,意味着只有拥有者可以访问。您可以根据需要设置为public-read
(任何人可读)、public-read-write
(任何人可读写),但请注意公开权限会增加数据泄露的风险。LocationConstraint
,您可以选择数据存储的区域,这影响到数据的访问速度和合规性要求。综上所述,阿里云OSS提供了灵活且强大的Bucket管理能力,通过合理规划和配置,可以高效、安全地存储和管理您的数据资产。