Saltar al contenido

Paginación

La paginación divide los resultados de una API en páginas consultables por separado. El contrato debe definir el orden, la continuación y los cambios durante la lectura.

También conocido comoPagination
APIs y contratos de datos

La paginación divide una lista de resultados en páginas consultables por separado. Así, una API no tiene que enviar todos los registros en una única respuesta. El tamaño de página, el orden, la continuación y la forma de reconocer el final de la lista forman parte del contrato de la interfaz.

En un ejemplo ficticio, una lista ordenada por identificador contiene inicialmente A, B, C, D. La primera página devuelve A y B. Antes de la siguiente petición se inserta AA entre ambos. Si un método basado en desplazamiento omite ahora los dos primeros registros actuales, la siguiente página vuelve a empezar por B: un registro aparece dos veces. Un orden único no inmoviliza por sí solo el conjunto de datos.

La continuación necesita reglas explícitas

Un cursor puede señalar una posición de continuación, por ejemplo después del último registro devuelto. La API define su significado exacto. Un cursor no garantiza automáticamente una instantánea invariable; también deben contemplarse las eliminaciones y los cambios en los valores de ordenación.

En las recomendaciones de Google basadas en tokens, el valor de continuación se devuelve sin modificar, sin que el cliente lo descodifique. Los filtros y los demás argumentos de selección permanecen iguales; este contrato permite cambiar el tamaño de página. El token no sustituye al control de acceso. Una página corta o vacía tampoco demuestra aquí que la lista haya terminado: lo indica la ausencia del token de continuación. Desarrolle el cliente según el contrato documentado de la API utilizada.

Fuentes