danielgtaylor / danielgtaylor/openapi-cli-generator

Handle Pagination

Offen
#9 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
feature help-wanted need-info
Vorherrschende Sprache
Go
Sterne
218
Forks
54
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

For APIs with paginated responses, the `cli` package should include utilities for handling the response and fetching subsequent pages automatically up to some limit.

For example, the [GitHub API v3](https://developer.github.com/v3/#pagination) uses Link headers with hypermedia relations to provide pagination.

In general there seem to be three models in use:

1. Passing a page size and page number to get items. Maybe also some way to get a total page count.
2. Passing an iterator value to get the next set of items. When no iterator is (or no items are) returned you are done.
3. Using link relations to provide full URLs to fetch more items.

There should be a new OpenAPI extension to hint to the CLI which of these cases it is, how to handle it (e.g. parameter names), and whether to fetch all or expose limits via parameters in the CLI.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Es werden keine Dateien, Tests oder Einstiegspunkte genannt. Beginne damit, die API-Antwortverarbeitung und den Ablauf der generierten Befehle des cli-Pakets zu lokalisieren, vergleiche dann die drei Paginierungsmodelle und ermittle die erforderliche OpenAPI-Erweiterung und die Limits. Als abgeschlossen gilt die Aufgabe, wenn die Paginierung entsprechend dem deklarierten Modell konsistent behandelt und durch geeignete Tests abgedeckt wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
go, openapi
Bereich
api, cli
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.