Paginar resultados

Nesta página, descrevemos como diferentes ferramentas e bibliotecas do Cloud Storage paginam os resultados. A paginação é necessária ao listar um grande número de objetos ou buckets.

Console

O console do Google Cloud faz a paginação automática das listas de buckets e objetos nas páginas Buckets e Detalhes do bucket.


Abrir a página "Buckets"

Linha de comando

A Google Cloud CLI faz a paginação automática das listas de buckets e objetos.

Bibliotecas de cliente

C++

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para ver um exemplo de como esse iteração é usado, consulte a documentação de referência do C++ para ListObjects().

C#

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para ver um exemplo de como esse iterador é usado, consulte a documentação de referência do C# para ListObjects().

Go

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para ver um exemplo de como esse iterador é usado, consulte a documentação de referência do Go para Bucket.Objects.

Java

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para ver um exemplo de como esse iterador é usado, consulte a documentação de referência do Java para Storage.Objects.list.

Node.js

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para ver um exemplo de como esse iterador é usado, consulte a documentação de referência do Node.js para getFiles().

PHP

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para ver um exemplo de como esse iterador é usado, consulte a documentação de referência do PHP para Objects.

Python

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para um exemplo de como esse iterador é usado, consulte a documentação de referência do Python para iteradores de página.

Ruby

As bibliotecas cliente executam a paginação por padrão. Quando você chama uma função compatível com paginação, um iteração é retornado na resposta. Para ver um exemplo de como esse iterador é usado, consulte a documentação de referência do Ruby para Google::Cloud::Storage::File::List.

APIs REST

API JSON

Quando você chama uma função compatível com paginação, o token de continuação nextPageToken é retornado na resposta se a listagem estiver incompleta. O nextPageToken representa o último resultado retornado. Ao transmitir o valor de nextPageToken para o parâmetro pageToken de uma solicitação subsequente, você retorna a próxima página de resultados, começando após o último.

Exemplo de resposta

{
  "kind": "storage#objects",
  "nextPageToken": "CgtzaGliYS0yLmpwZw==",
  "items": [
    objects Resource
    …
  ]
}

Para mais informações sobre objects Resource, consulte a documentação de referência sobre objetos.

Exemplo de solicitação

GET https://storage.googleapis.com/storage/v1/b/BUCKET_NAME&pageToken=NEXT_PAGE_TOKEN HTTP/1.1

Authorization: Bearer ACCESS_TOKEN
Accept: application/json

Em que:

  • NEXT_PAGE_TOKEN é o valor da nextPageToken da resposta anterior.
  • BUCKET_NAME é o nome do bucket de armazenamento.
  • ACCESS_TOKEN é o token de acesso que você recebe do OAuth 2.0 Playground.

Para mais informações sobre resultados de paginação, consulte a documentação de referência do JSON para Objects: list ou Buckets: list.

API XML

Quando você chama uma função compatível com a paginação, o token de continuação NextContinuationToken é retornado na resposta se a listagem estiver incompleta. O NextContinuationToken representa o último resultado retornado. Ao transmitir o valor de NextContinuationToken para o parâmetro continuation-token de uma solicitação subsequente, você retorna a próxima página de resultados, começando após o último resultado.

Exemplo de resposta

HTTP/1.1 200 OK
X-goog-metageneration: 5
Content-location: https://example-bucket.storage.googleapis.com?max-keys=2&list-type=2
Expires: Wed, 02 Mar 2022 15:58:11 GMT
Content-length: 781
X-guploader-uploadid: ADPycdvFss2qs9wyMrrM2fIIZzTFFnZZM9i9k8TMbHipsxz8PqUjS5Xh_4tLsvb3_YYHTT0HmSYVv1Gtr816HQFnk28HMglyWA
Cache-control: private, max-age=0
Date: Wed, 02 Mar 2022 15:58:11 GMT
Content-type: application/xml; charset=UTF-8

<?xml version='1.0' encoding='UTF-8'?>
<ListBucketResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'>
  <Name>example_bucket</Name>
  <NextContinuationToken>CgtzaGliYS0yLmpwZw==</NextContinuationToken>
  <KeyCount>2</KeyCount>
  <MaxKeys>2</MaxKeys>
  <IsTruncated>true</IsTruncated>
  <Contents>
    ...
  </Contents>
  ...
</ListBucketResult>

list-type precisa ser definido como 2 para retornar um NextContinuationToken.

Exemplo de solicitação

GET /?continuation-token=NEXT_CONTINUATION_TOKEN&prefix=t&marker=test&list-type=2 HTTP/1.1 \
  Host: BUCKET_NAME.storage.googleapis.com
  Date: Wed, 02 Mar 2022 16:00:00 GMT
  Content-Length: 0
  Authorization: AUTHENTICATION_STRING

Em que:

  • NEXT_CONTINUATION_TOKEN é o valor de NextContinuationToken recebido pela resposta anterior.
  • BUCKET_NAME é o nome do bucket de armazenamento.
  • AUTHENTICATION_STRING é o token de acesso que você recebe do OAuth 2.0 Playground.

Para instruções mais detalhadas sobre a paginação dos resultados de um bucket, consulte a documentação de referência XML para List Objects.

Próximas etapas