A nivel de rendimiento, ¿es mejor GET o HEADER para ver cantidad de registros?

Introducción a API REST (gratis) | 1.4 - Métodos/Verbos HTTP

Avatar
Rodrigo Melgarejo

@rodrigom94

Si tengo una base de datos de más 10 mil items y necesito hacer una petición para saber cuántos ítems existen, ¿la petición HEADER sería más eficiente que GET (que entiendo va a pedir la data de estos 10 mil items)?

SP
Sterling Paulino

@sterlingpaulino

entiendo que Header es para preguntar si existen esos items.

Avatar
Jose Ariel Peralta

@josearielperalta

Realmente el uso de los verbos HTTP es mas bien descriptivo, para saber que acción se quiere realizar, técnicamente podrías eliminar o crear un recurso con GET, y te daría el mismo rendimiento que con un DELETE o un POST, pero tu API se convertiría en un verdadero caos.

Ahora bien, HEADER se utiliza para saber la existencia de un recurso de la API, un recurso no es lo mismo que un registro de la base de datos.

Por ejemplo, puedo tener un recurso /productos/:id/comentarios/ que quiere decir que puedo acceder a los 'comentarios del producto con id 1'. el recurso existe dentro del API, lo puedo utilizar para leer (GET), crear(POST), eliminar (DELETE), pero eso no implica que en la base de datos existan comentarios para el producto con id 1.

En resumen, HEADER lo utilizarías para saber si puedes acceder a esos 'datos', no para acceder a esos 'datos' en si.

Saludos! espero haberme explicado.

Avatar
Alexys Lozada

@alexyslozada

La respuesta es NO. Para saber cuantos ITEMS existen, necesitas hacer una petición GET, para que te devuelva un número en el body. Si usas Header, no sabrás la cantidad, porque Header no devuelve contenido, solo si existe un recurso o no.

Avatar
TheMatrixHasYou

@thematrixhasyou

PAra eso esta precisamente la paginacion, SpringRest , soporta perfectamente la paginacion en el metodo GET

Ver más comentarios

Avatar

Escribe una respuesta