最近才发现盛大云存储原来也有 Ruby SDK,去用了一下。
Ruby SDK 的安装:
gem install sndacs
使用:
#初始化云存储服务对象:
require "sndacs"
service = Sndacs::Service.new(:access_key_id => '...'
:secret_access_key => '...')
#Bucket相关操作示例
#新建Bucket,可指定Bukcet的Location,默认为huabei-1
new_bucket = service.buckets.build("rubybucketdefault")
new_bucket.save
#新建Bucket到指定Location:目前支持两个Location,分别为huadong-1和huabei-1
new_bucket = service.buckets.build("rubybuckethuadong-1")
new_bucket.save(:location=>"huadong-1")
#列出当前用户的所有Bucket:
service.buckets
#获取一个Bucket对象:
first_bucket = service.buckets.find("first-bucket")
#获取指定Bucket的Location:
first_bucket.location
#Object相关操作
#获取指定Bucket下的Object列表:
first_bucket.objects
#获取一个Object对象:
object = first_bucket.objects.find("star.png")
#获取Object的元数据:
object.content_type
#获取Object的内容(下载一个Object):
object.content
#获取Object的临时下载地址,即基于Query String签名的外链:
#可指定链接失效时间,默认为1小时
object.temporary_url(Time.now + 10 )
#删除一个Object:
object.destroy
#创建一个Object(上传文件):
new_object = first_bucket.objects.build("flower.png")
new_object.content = open("flower.png")
new_object.save
现在用下来还不错,再观察一段时间。