Pagination
La pagination divise les résultats d’une API en pages consultables séparément. Tri, poursuite de lecture et modifications relèvent du contrat de l’API.
La pagination divise une liste de résultats en pages consultables séparément. L’API n’a donc pas à transmettre tous les enregistrements dans une seule réponse. La taille des pages, le tri, la poursuite de la lecture et le signal de fin de liste font partie du contrat de l’interface.
Dans un exemple fictif, une liste triée par identifiant contient au départ A, B, C, D. La première page renvoie A et B. Avant la requête suivante, AA est ajouté entre ces deux entrées. Si une méthode par décalage ignore alors les deux premiers enregistrements actuels, la page suivante recommence à B : un enregistrement apparaît deux fois. Un ordre de tri unique ne fige pas à lui seul les données.
La poursuite de lecture exige des règles précises
Un curseur peut désigner une position de reprise, par exemple après le dernier enregistrement renvoyé. L’API en définit le sens exact. Un curseur ne garantit pas automatiquement un instantané inchangé ; il faut aussi prendre en compte les suppressions et les modifications des valeurs de tri.
Dans les recommandations de Google fondées sur un jeton, la valeur de continuation est renvoyée telle quelle, sans être décodée par le client. Les filtres et les autres paramètres de sélection restent identiques ; ce contrat autorise un changement de taille de page. Le jeton ne remplace aucun contrôle d’accès. Une page courte ou vide ne prouve pas non plus la fin de la liste dans ce cadre : c’est l’absence de jeton de continuation qui l’indique. Développez le client selon le contrat documenté de l’API utilisée.
Sources
Termes associés
- APIUne API définit comment un logiciel peut utiliser les fonctions ou données proposées par un autre logiciel.
- RESTREST définit des règles d’architecture pour des interfaces distribuées : ressources, requêtes sans état et liens en font partie.
- OpenAPIOpenAPI décrit les interfaces HTTP sous une forme lisible par machine : chemins, paramètres et réponses. La description doit correspondre au service.
- Server-Sent EventsLes Server-Sent Events transmettent du texte du serveur au client par HTTP, par exemple sur l’avancement d’une tâche en arrière-plan.
- ETagUn ETag identifie une version de représentation d’une ressource HTTP et permet des lectures ou modifications conditionnelles.
- Cross-Origin Resource SharingCORS contrôle l’accès du navigateur aux réponses d’une autre origine. Il ne remplace ni la connexion ni la vérification des droits de l’API.
Votre projet avec ASES
Décrivez-nous votre projet. Nous revenons vers vous avec une première évaluation.