Seiten und Cursor
Wie Listenoperationen Ergebnisse auf Seiten aufteilen und wie du die nächste liest.
Seiten mit Cursor
Listenoperationen antworten mit items und nextCursor. Um die nächste Seite zu lesen, sende dieselbe Anfrage erneut und setze cursor auf den erhaltenen nextCursor. Ist nextCursor null, gibt es keine weiteren Seiten.
curl "https://api.nogitsu.com/v1/works?limit=3&cursor=eyJ2YWx1ZSI6MSwiaWQiOiIwMWEwY2IwYS0zN2MxLTc5NDYtYmUzOC1iZmM5ZjFhNWFmMGUifQ"Alle Seiten lesen
Lass die übrigen Parameter unverändert, während du dem Cursor folgst. Ein Cursor ist undurchsichtig: Bau oder ändere ihn nicht selbst und bewahre ihn nicht lange auf, denn die Reihenfolge kann sich ändern, wenn der Katalog aktualisiert wird.
let cursor = null
do {
const url = new URL('https://api.nogitsu.com/v1/works')
url.searchParams.set('medium', 'anime')
url.searchParams.set('limit', '50')
if (cursor) url.searchParams.set('cursor', cursor)
const page = await fetch(url).then((response) => response.json())
for (const work of page.items) console.log(work.primaryTitle)
cursor = page.nextCursor
} while (cursor)Seitengröße
Wo eine Operation limit akzeptiert, zeigt ihre Referenzseite den Standardwert und den größten erlaubten Wert. Fragst du mehr als den größten Wert an, erhältst du einen 400-Fehler statt einer kürzeren Seite.
Entdecken nutzt Seitenzahlen
Die facettierte Suche hinter der Entdecken-Seite zählt Ergebnisse, statt einem Cursor zu folgen. Sie nimmt page entgegen und antwortet mit found, page und pageSize, bis Seite 100.
curl "https://api.nogitsu.com/v1/search/works/explore?medium=anime&genres=fantasy&page=2"