5

s3バケットからファイルを取得するためのRailsタスクを作成する必要がありますが、バケットには10​​00を超えるオブジェクトがあります。

.
#Connection codes and configures
.
bucket = AWS::S3::Bucket.find('my_bucket')
puts bucket.size
# => 1000

このコードは私に1000個のオブジェクトを与えるだけです:(
どうすればs3バケットからすべてのオブジェクトを取得できますか?

4

1 に答える 1

9

S3開発者向けドキュメントに記載されているように:

大きな結果セットを管理するために、AmazonS3はページ付けを使用してそれらを複数の応答に分割します。各リストキー応答は、応答が切り捨てられているかどうかを示すインジケーターが付いた最大1,000キーのページを返します。すべてのキーを受け取るまで、一連のリストキー要求を送信します。

REST GETバケット操作への応答には、上記のインジケーターの役割を果たすIsTruncated要素が含まれています。

AWS :: S3ライブラリを使用して次の結果セットを取得するには、結果の現在のページの最後のキーを次のリクエストのマーカーとして使用します。

于 2012-11-12T00:49:09.833 に答える