GraphQL ti consente di recuperare solo i campi di cui hai bisogno. Questo aiuta a mantenere le risposte di rete piccole e veloci. Tuttavia, GraphQL non garantisce automaticamente risposte di piccole dimensioni. Se l'elenco dei risultati contiene molti elementi, potrebbe causare una risposta enorme. In questa situazione sarà necessario implementare la paginazione.
La nostra API GraphQL implementa la paginazione basata su cursore. Ci sono 4 parametri utilizzati per navigare attraverso gli elementi.
- after: Pagina dopo il cursore opaco
- before: Pagina prima del cursore opaco
- first: Pagina i primi x elementi
- last: Pagina gli ultimi x elementi
Nella query, puoi richiedere gli oggetti pageInfo e pageData, che forniranno tutti i dati necessari per la paginazione. Di seguito è riportato un esempio per paginare la risposta dei dispositivi. Richiede il primo elemento dopo il cursore specificato.
query{
devices (query : {},first:1,after:"YXJyYXljb25uZWN0aW9uOjQ=") {
page{
edges{
cursor,
node{
_id,
deviceName,
UUID,
pairingCode,
currentType,
currentAssetId,
currentPlaylistId,
localAppVersion,
},
},
pageInfo{
hasNextPage,
startCursor,
endCursor
}
},
pageData{
limit,
offset
}
}
}
Articolo precedente - Tutorial: Creazione di pianificazioni e aggiunta di elementi di pianificazione utilizzando GraphQL
Articolo successivo - Gestione degli errori