详细解答可以参考官方帮助文档
存储空间(Bucket)是OSS上的命名空间,也是计费、权限控制、日志记录等高级功能的管理实体。
使用Client#list_buckets
接口列出当前用户下的所有Bucket,用户还可以指定:prefix
参数,列出Bucket名字为特定前缀的所有Bucket:
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
endpoint: 'endpoint',
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
buckets = client.list_buckets
buckets.each { |b| puts b.name }
buckets = client.list_buckets(:prefix => 'my-')
buckets.each { |b| puts b.name }
使用Client#create_bucket
接口创建一个Bucket,用户需要指定Bucket的名字:
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
endpoint: 'endpoint',
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
client.create_bucket('my-bucket')
注意:
- Bucket的命名规范请查看OSS 基本概念。
- 由于存储空间的名字是全局唯一的,所以必须保证您的Bucket名字不与别人的重复。
使用Client#delete_bucket
接口删除一个Bucket,用户需要指定Bucket的名字:
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
endpoint: 'endpoint',
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
client.delete_bucket('my-bucket')
注意:
- 如果该Bucket下还有文件存在,则需要先删除所有文件才能删除Bucket
- 如果该Bucket下还有未完成的上传请求,则需要通过
list_uploads
和abort_upload
先取消那些请求才能删除Bucket。用法请参考API文档。
用户可以通过Client#bucket_exists?
接口查看当前用户的某个Bucket是否存在:
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
endpoint: 'endpoint',
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
puts client.bucket_exists?('my-bucket')
用户可以设置Bucket的访问权限,允许或者禁止匿名用户对其内容进行读写。更多关于访问权限的内容请参考访问权限。
通过Bucket#acl
查看Bucket的ACL:
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
endpoint: 'endpoint',
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
bucket = client.get_bucket('my-bucket')
puts bucket.acl
通过Bucket#acl=
设置Bucket的ACL:
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
endpoint: 'endpoint',
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
bucket = client.get_bucket('my-bucket')
bucket.acl = Aliyun::OSS::ACL::PUBLIC_READ
puts bucket.acl
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。