0

给定一个对象(启用版本),我试图弄清楚如何获取LastModified所有对象版本的日期。

我找到了一个返回存储桶版本的 API(http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETVersion.html):

GET /?versions HTTP/1.1
Host: BucketName.s3.amazonaws.com
Date: date
Authorization: signatureValue

这个 API 返回LastModified我需要的日期,但是:

  1. 我不知道如何使用官方 aws-sdk gem 从我的 Ruby 代码中调用此 API
  2. LastModified获取存储桶中所有对象的所有版本很昂贵,我只想为单个对象获取具有关联日期的版本

我是 S3 API 和 gem 的新手,有人可以帮我吗?

4

1 回答 1

0

RestBucketGETVersion(又名“版本感知列表”)接受一个前缀参数,该参数将结果限制为仅该前缀。如果您有要枚举的对象“foo.txt”,则可以将其用作前缀。请小心,因为这也会匹配其他文件,如“foo.txt.bak”。但是,如果您对此很聪明,一旦遇到不匹配的情况,您就可以停止对结果进行分页,而且最坏的情况是需要多花一次到 S3 的往返行程。

这一系列文档有帮助吗?

于 2013-08-02T05:26:05.627 回答