下面介绍如何使用OSS Ruby SDK来访问OSS服务,包括查看Bucket列表、查看文件列表、上传文件、下载文件和删除文件。
为了方便使用,下面的操作都是在Ruby的交互式命令行irb
中进行。
初始化Client
在命令行中输入irb并回车。
在Ruby的交互式命令行模式下,输入require
引入SDK包。
> require 'aliyun/oss' => true
说明 在接下来的演示中,
>
符号后面的内容是用户输入的命令,
=>
后面的内容是程序返回的内容。
接下来创建Client:
> client = Aliyun::OSS::Client.new( > endpoint: 'endpoint', > access_key_id: 'AccessKeyId', > access_key_secret: 'AccessKeySecret') => #<Aliyun::OSS::Client...
将其中的参数替换成您实际的endpoint、AccessKeyId和AccessKeySecret。
查看Bucket列表
通过以下命令查看Bucket列表:
> buckets = client.list_buckets => #<Enumerator... > buckets.each { |b| puts b.name } => bucket-1 => bucket-2 => ...
如果Bucket列表为空,则可以用以下命令创建一个Bucket:
> client.create_bucket('my-bucket') => true
说明
- Bucket的命名规范请查看OSS 基本概念。
- Bucket名字不能与OSS服务中其他用户已有的Bucket重复,所以你需要选择一个独特的Bucket名字以避免创建失败。
查看文件列表
通过以下命令查看Bucket中的文件列表:
> bucket = client.get_bucket('my-bucket') => #<Aliyun::OSS::Bucket... > objects = bucket.list_objects => #<Enumerator... > objects.each { |obj| puts obj.key } => object-1 => object-2 => ...
上传文件
通过以下命令向Bucket中上传一个文件:
> bucket.put_object('my-object', :file => 'local-file') => true
其中local-file
是需要上传的本地文件的路径。上传成功后,可以通过list_objects
来查看:
> objects = bucket.list_objects => #<Enumerator... > objects.each { |obj| puts obj.key } => my-object => ...
下载文件
通过以下命令从Bucket中下载一个文件:
> bucket.get_object('my-object', :file => 'local-file') => #<Aliyun::OSS::Object...
其中local-file
是文件保存的路径。下载成功后,可以打开文件查看其内容。
删除文件
通过以下命令从Bucket中删除一个文件:
> bucket.delete_object('my-object') => true
删除文件后可以通过list_objects
来查看文件确实已经被删除:
> objects = bucket.list_objects => #<Enumerator... > objects.each { |obj| puts obj.key } => object-1 => ...