Vai al contenuto

Pagine e cursori

Come le operazioni di elenco dividono i risultati in pagine e come leggere la successiva.

Pagine con cursore

Le operazioni di elenco rispondono con items e nextCursor. Per leggere la pagina successiva, invia di nuovo la stessa richiesta con cursor impostato sul nextCursor ricevuto. Quando nextCursor è null, non ci sono altre pagine.

Shell
curl "https://api.nogitsu.com/v1/works?limit=3&cursor=eyJ2YWx1ZSI6MSwiaWQiOiIwMWEwY2IwYS0zN2MxLTc5NDYtYmUzOC1iZmM5ZjFhNWFmMGUifQ"

Leggere tutte le pagine

Mantieni invariati gli altri parametri mentre segui il cursore. Un cursore è opaco: non costruirlo né modificarlo da solo e non conservarlo a lungo, perché l'ordine può cambiare man mano che il catalogo viene aggiornato.

JavaScript
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)

Dimensione della pagina

Dove un'operazione accetta limit, la sua pagina di riferimento mostra il valore predefinito e il valore massimo consentito. Chiedere più del valore massimo restituisce un errore 400 invece di una pagina più corta.

Esplora usa i numeri di pagina

La ricerca a faccette dietro la pagina Esplora conta i risultati invece di seguire un cursore. Accetta page e risponde con found, page e pageSize, fino alla pagina 100.

Shell
curl "https://api.nogitsu.com/v1/search/works/explore?medium=anime&genres=fantasy&page=2"