Impagina i risultati

Questa pagina descrive in che modo i diversi strumenti e librerie di Cloud Storage paginano i risultati. La paginazione è necessaria quando si elencano un numero elevato di oggetti o bucket.

Console

La Google Cloud console esegue automaticamente la paginazione degli elenchi di bucket e oggetti nelle pagine Bucket e Dettagli bucket.


Apri la pagina Bucket

Riga di comando

La Google Cloud CLI esegue automaticamente la paginazione degli elenchi di bucket e oggetti.

Librerie client

C++

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un iteratore. Puoi controllare le dimensioni della pagina specificando le opzioni nella richiesta. Per un esempio di come viene utilizzato questo iteratore, consulta la documentazione di riferimento di C++ per ListObjects().

C#

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un iteratore. Puoi controllare le dimensioni della pagina specificando le opzioni nella richiesta. Per un esempio di come viene utilizzato questo iteratore, consulta la documentazione di riferimento di C# per ListObjects().

Vai

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un iteratore. Puoi controllare le dimensioni della pagina utilizzando le opzioni di query o di paginazione. Per un esempio di come viene utilizzato questo iteratore, consulta la documentazione di riferimento di Go per Bucket.Objects.

Java

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un token di pagina. Puoi controllare le dimensioni della pagina utilizzando le opzioni pageSize. Per un esempio di come viene utilizzato, consulta la documentazione di riferimento di Java.

Node.js

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un iteratore. Puoi controllare le dimensioni della pagina utilizzando le opzioni di query (ad esempio maxResults). Per un esempio di come viene utilizzato questo iteratore, consulta la documentazione di riferimento di Node.js per getFiles().

PHP

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un iteratore. Puoi controllare le dimensioni della pagina utilizzando opzioni come maxResults. Per un esempio di come viene utilizzato questo iteratore, consulta la documentazione di riferimento di PHP per Objects.

Python

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un iteratore. Puoi controllare le dimensioni della pagina utilizzando opzioni come max_results o page_size. Per un esempio di come viene utilizzato questo iteratore, consulta la documentazione di riferimento di Python per gli iteratori di pagina.

Ruby

Le librerie client eseguono la paginazione per impostazione predefinita. Quando chiami una funzione che supporta la paginazione, il metodo restituisce un iteratore. Puoi controllare le dimensioni della pagina utilizzando opzioni come max. Per un esempio di come viene utilizzato questo iteratore, consulta la documentazione di riferimento di Ruby per Google::Cloud::Storage::File::List.

API REST

API JSON

Per controllare il numero di risultati restituiti per pagina, utilizza il maxResults parametro della query nelle richieste a Objects: list o Buckets: list. Ad esempio, per elencare un massimo di 5 oggetti alla volta:

GET https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o?maxResults=5

Quando chiami una funzione che supporta la paginazione, se l'elenco è incompleto, nella risposta viene restituito il token di continuazione nextPageToken. nextPageToken rappresenta l'ultimo risultato restituito.

Ad esempio, una richiesta per elencare gli oggetti in BUCKET_NAME potrebbe restituire un nextPageToken nella risposta:

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

Per restituire la pagina successiva dei risultati, a partire dall'ultimo risultato, passa il valore di nextPageToken al parametro pageToken di una richiesta successiva:

GET https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o?pageToken=CgtzaGliYS0yLmpwZw==

Puoi combinare maxResults e pageToken nella stessa richiesta per continuare a elencare con una dimensione di pagina specifica.

Per ulteriori informazioni sulla paginazione dei risultati, consulta la documentazione di riferimento JSON per Objects: list o Buckets: list.

API XML

Per controllare il numero di risultati restituiti per pagina, utilizza il max-keys parametro della query nelle richieste a List Objects. Ad esempio, per elencare un massimo di 5 oggetti alla volta:

GET /?max-keys=5 HTTP/1.1
Host: BUCKET_NAME.storage.googleapis.com

Quando chiami una funzione che supporta la paginazione, se l'elenco è incompleto, nella risposta viene restituito il token di continuazione NextContinuationToken. NextContinuationToken rappresenta l'ultimo risultato restituito.

Ad esempio, una richiesta per elencare gli oggetti in BUCKET_NAME potrebbe restituire un NextContinuationToken nella risposta:

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

Tieni presente che list-type deve essere impostato su 2 per restituire un NextContinuationToken quando elenchi gli oggetti.

Per restituire la pagina successiva dei risultati, a partire dall'ultimo risultato, passa il valore di NextContinuationToken al parametro continuation-token di una richiesta successiva:

GET /?continuation-token=CgtzaGliYS0yLmpwZw==&list-type=2 HTTP/1.1
Host: BUCKET_NAME.storage.googleapis.com

Puoi combinare max-keys e continuation-token nella stessa richiesta.

Per istruzioni più dettagliate sulla paginazione dei risultati di un bucket, consulta la documentazione di riferimento XML per List Objects.

Passaggi successivi