View a markdown version of this page

Pagination - AWS SDK et outils

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Pagination

De nombreuses opérations de AWS service peuvent donner plus de résultats qu'une seule réponse. Lorsque cela se produit, la réponse inclut un jeton de pagination qui indique que d'autres résultats sont disponibles. Pour récupérer la page de résultats suivante, vous devez inclure ce jeton dans une demande ultérieure. Ce processus se répète jusqu'à ce qu'aucun jeton ne soit renvoyé, ce qui indique que vous avez reçu tous les résultats.

Comment fonctionne la pagination

Lorsque vous appelez une opération d'API paginée, le service renvoie un nombre maximum fixe d'éléments par réponse. Si le nombre total d'éléments dépasse ce maximum, le service inclut un jeton de pagination dans la réponse. Le nom spécifique de ce jeton varie en fonction du service. Les noms courants incluentNextToken, MarkerContinuationToken, et. ExclusiveStartKey Pour demander la page suivante, vous devez transmettre cette valeur de jeton dans le paramètre de demande correspondant à votre prochain appel.

La plupart des opérations paginées prennent également en charge un paramètre qui contrôle le nombre maximum d'éléments renvoyés par page. Les noms courants de ce paramètre sont les suivants : MaxResults MaxItemsMaxKeys,MaxRecords, etLimit.

Un jeton de pagination n'est valide que si vous l'avez reçu dans une réponse précédente de la même opération. Si la réponse n'inclut pas de jeton, il n'y a plus de résultats à récupérer.

Utilisation de paginateurs

Plutôt que de suivre manuellement les jetons de pagination, tous les AWS SDK fournissent des abstractions de pagination. Un paginateur gère automatiquement la gestion des jetons, en effectuant des appels d'API successifs et en produisant des résultats jusqu'à ce que toutes les pages aient été récupérées. L'utilisation d'un paginateur simplifie votre code et réduit le risque d'erreurs telles que l'oubli de transmettre le jeton ou son utilisation incorrecte.

Principales caractéristiques des paginateurs dans les SDK :

  • Les paginateurs acceptent les mêmes paramètres d'entrée que l'opération d'API sous-jacente.

  • Les paginateurs détectent automatiquement lorsque d'autres pages sont disponibles et les récupèrent.

  • Les paginateurs arrêtent de faire des demandes lorsqu'aucun jeton de pagination n'est renvoyé dans la réponse.

  • Certains SDK fournissent également des mécanismes permettant de limiter le nombre total de pages ou d'éléments récupérés.

Consultez le guide du développeur de votre SDK spécifique pour connaître la syntaxe du paginateur et les modèles d'utilisation disponibles dans votre langue.

Support par AWS Kits SDK et outils

Les SDK suivants prennent en charge les fonctionnalités et les paramètres décrits dans cette rubrique. Toute exception partielle est notée. Tous les paramètres de propriété du système JVM sont pris en charge par le AWS SDK pour Java et le AWS SDK for Kotlin seul.

Kit SDK Pris en charge Remarques ou informations supplémentaires
AWS CLI   v2 Oui Built-in pagination automatique pour toutes les commandes. Utilisez --no-paginate pour désactiver.
SDK pour C++ Non La gestion manuelle des jetons est requise.
SDK pour Go V2 (1.x) Oui New<OperationName>PaginatorTypes d'utilisation.
SDK pour Go 1.x (V1) Oui Utilisez <OperationName>Pages des méthodes.
SDK pour Java 2.x Oui Utilisez <operationName>Paginator des méthodes sur le client.
SDK pour Java 1.x Oui
SDK pour 3.x JavaScript Oui Utilisez paginate<OperationName> des fonctions.
SDK pour 2.x JavaScript Non La gestion manuelle des jetons est requise.
SDK pour Kotlin Oui Utilisez les fonctions d'<operationName>Paginatedextension.
SDK pour .NET 4.x Oui Utilisez IPaginator des interfaces.
SDK pour .NET 3.x Oui Utilisez IPaginator des interfaces.
SDK pour PHP 3.x Oui À utiliser getPaginator sur le client.
SDK pour Python (Boto3) Oui À utiliser get_paginator sur le client.
SDK pour Ruby 3.x Oui À utiliser .each sur les réponses qui prennent en charge la pagination.
SDK pour Rust Oui Utilisez .into_paginator() des constructeurs sur demande.
SDK pour Swift Oui PaginatedSequenceTypes d'utilisation.
Outils pour PowerShell V5 Oui Built-in pagination automatique. Utilisez -NoAutoIteration pour désactiver.
Outils pour PowerShell V4 Oui