Strategie di paging: token di pagina o indice di salto / inizio

7

Ho notato che sempre più nuove API utilizzano token di pagina per consentire all'utente di spostarsi tra le pagine dei risultati contenenti molti elementi. Tuttavia, da un punto di vista del progettista API non sono chiaro su quali siano i vantaggi dell'utilizzo di un token rispetto a quando si consente all'utente di specificare il numero di elementi che desidera saltare.

Quindi ecco le mie domande:

  1. Quali sono i vantaggi dell'utilizzo di un token di pagina su un indice iniziale?
  2. Approssimativamente, in termini di alto livello, in che modo l'implementazione tipica dei token di pagina tiene traccia delle pagine? Memorizzare nella cache tutti i risultati sarebbe piuttosto inefficiente. Immagino che si possa usare una sorta di hash, ma non sono sicuro di quale sarebbe l'hash per ricostruire i risultati.

Grazie

    
posta tobiak777 21.03.2016 - 17:03
fonte

1 risposta

2
  1. What are the benefits of using a page token over a start index ?
  1. Il token di pagina è utile quando non vuoi che gli utenti si spostino su una determinata pagina senza recuperare i primi risultati. Poiché il token della pagina successiva viene ricevuto solo quando si accede alla pagina precedente, gli utenti non saranno in grado di memorizzare nella cache una ricerca e accedere al contenuto in un secondo momento. Pertanto, gli utenti finali non possono saltare contenuti promossi (pubblicizzati).

  2. Impossibile eseguire richieste parallele

  1. Roughly, in high-level terms, how does the typical page token implementation keeps track of pages ? Caching all the results would be rather inefficient. I'm guessing that some sort of hash could be used, but I'm not sure what would be hashed to reconstruct the results.

Questo potrebbe variare, poiché l'API è a riposo, i criteri di ricerca sono già lì, il modo semplice per fare è di fare di nuovo la ricerca e ottenere la pagina basata sull'algoritmo di hashing. Oppure potrebbe anche memorizzare nella cache la ricerca ... ma dipende dall'implementazione.

    
risposta data 22.03.2016 - 02:52
fonte

Leggi altre domande sui tag