Имеет ли Amazon S3 ограничение на MaxKeys при вызове ListObjects?

Я всегда думал, что при вызове ListObjects в Amazon S3 существует ограничение в 1000 ключей. Тем не менее, я только что сделал звонок, и он тянет 1,080. Но даже их docs скажем, есть предел 1,000.

Я попытался установить параметр MaxKeys в 1,000, но он по-прежнему тянет результаты 1,080. Мой код:

$iterator = $s3->getIterator('ListObjects', array(
    'Bucket' => 'BUCKETNAME',
    'MaxKeys' => 1000
));

однако он тянет папки в качестве ключей. Но у меня их точно нет.

два вопроса:

  1. мой код не так?
  2. Amazon снял ограничение на 1000 ключей? Есть ли новый предел?

спасибо заранее!

1 ответов


предел API S3 не изменился, он по-прежнему ограничен максимум 1000 ключами/ответом.

С PHP SDK v1 один запрос возвращается до 1000 ключей, а чтобы получить остальные, вам нужно сделать второй запрос с .

новый PHP SDK (v2) имеет концепцию итераторов, которая абстрагирует процесс выполнения этих нескольких последовательных запросов. Это делает получение всех ваших объектов намного проще.