Saltar al contenido

7 métodos HTTP que todo desarrollador web debe conocer y cómo probarlos: Asertible

Alguna vez se preguntó cuál es la diferencia entre GET y POST
solicitudes, o cuándo usar PUT? No estás solo. Tener un básico
comprensión de los diferentes métodos HTTP, o verbos, una API
apoya es un conocimiento útil cuando explorar y probar API.

En esta publicación, discutiré cómo se usa cada método HTTP y cómo
incorpórelos en sus pruebas de API.

GET Las solicitudes son los métodos más comunes y más utilizados en las API y
sitios web. En pocas palabras, el método GET se utiliza para recuperar datos de un
servidor en el recurso especificado
. Por ejemplo, digamos que tiene una API
con un /users punto final. Hacer una solicitud GET a ese punto final debería
devuelve una lista de todos los usuarios disponibles.

Dado que una solicitud GET solo solicita datos y no modifica
recursos, es
considerado
un método seguro e idempotente.

Probando una API con solicitudes GET

Cuando crea pruebas para una API, el GET el método probablemente será
el tipo de solicitud más frecuente que realizan los consumidores del servicio, por lo que
Es importante comprobar todos los puntos finales conocidos con una solicitud GET.

En un nivel básico, estas cosas deben validarse:

GET es a menudo el método predeterminado en clientes HTTP, entonces creando pruebas
porque estos recursos deben ser simples con cualquier herramienta que elija.

En servicios web, POST las solicitudes se utilizan para enviar datos a la API
servidor
para crear o actualizar un recurso. Los datos enviados al servidor son
guardado en
la
solicitar cuerpo de
la solicitud HTTP.

El ejemplo más simple es un formulario de contacto en un sitio web. Cuando
rellenas las entradas en un formulario y pulsas Enviar, esos datos se ponen en
la cuerpo de respuesta de la solicitud y enviada al servidor. Esto puede
ser JSON, XML o parámetros de consulta (hay muchos otros formatos,
pero estos son los más comunes).

Vale la pena señalar que un POST la solicitud es no idempotente. Eso
muta datos en el servidor backend (creando o actualizando un
recurso), a diferencia de un GET solicitud que no cambia nada
datos. Aquí hay una gran explicación de la idempotencia.

Prueba de una API con solicitudes POST

El segundo método HTTP más común que encontrará en sus pruebas de API
es POST. Como se ha mencionado más arriba, POST las solicitudes se utilizan para
enviar datos al servidor API y crear o actualizar un recurso. Ya que
Las solicitudes POST modifican los datos, es importante tener pruebas API para todos
de tus métodos POST
.

A continuación, se incluyen algunos consejos para probar las solicitudes POST:

Para obtener más ideas sobre pruebas de API comunes
escenarios,
mira esta publicación.

Simlar a POST, PUT las solicitudes se utilizan para enviar datos a la API para
actualizar o crear un recurso. La diferencia es
ese
. Ese
es, llamar a la misma solicitud PUT varias veces siempre producirá
el mismo resultado
. Por el contrario, llamar a una solicitud POST repetidamente hace
tienen los efectos secundarios de crear el mismo recurso varias veces.

Generalmente, cuando un PUT solicitud crea un recurso que el servidor
responder con un 201 (Created), y si la solicitud modifica
recurso existente, el servidor devolverá un 200 (OK) o 204 (No
Content
).

Prueba de una API con solicitudes PUT

Probando una API PUT Los métodos son muy similares a probar POST
peticiones. Pero ahora que sabemos la diferencia entre los dos
(idempotencia), podemos crear pruebas de API para confirmar este comportamiento.

Compruebe estas cosas al probar las solicitudes PUT:

UN PATCH request es uno de los métodos HTTP menos conocidos, pero estoy
incluyéndolo tan alto en la lista ya que es similar a POST y
PONER. La diferencia con PATCH Eres tu solo aplicar parcial
modificaciones al recurso
.

La diferencia entre PATCH y PUT, es que
un
(me gusta
una solicitud POST).

Para ampliar la modificación parcial, digamos que su API tiene una
/users/{{userid}} endpoint, y un usuario tiene un nombre de usuario. Con un
Solicitud de parche, es posible que solo necesite enviar el nombre de usuario actualizado en
el cuerpo de la solicitud, a diferencia de POST y PUT, que requieren el
entidad de usuario.

Probar una API con solicitudes de PATCH

Desde el PATCH método es tan similar a POST y PUT, muchos de los la
se aplican las mismas técnicas de prueba.
Sigue siendo importante validar la
comportamiento de cualquier punto final de API que acepte este método.

Qué buscar al probar las solicitudes de PATCH:

La semántica de las solicitudes PATCH dependerá en gran medida de la API específica que esté probando.

los DELETE El método es exactamente como suena: eliminar el recurso en
la URL especificada
. Este método es uno de los más comunes en RESTful
API, por lo que es bueno saber cómo funciona.

Si se crea un nuevo usuario con una solicitud POST para /usersy puede
ser recuperado con un GET solicitud de /users/{{userid}}, luego haciendo
un DELETE solicitud de /users/{{userid}} eliminará completamente eso
usuario.

Probar una API con solicitudes DELETE

DELETE las solicitudes deben someterse a pruebas exhaustivas, ya que generalmente eliminan
datos de una base de datos. Tenga cuidado al probar los métodos DELETE, haga
asegúrese de que está usando las credenciales correctas y no está probando con
datos del usuario.

UN caso de prueba típico para una solicitud DELETE se vería así:

Además, enviar una solicitud DELETE a un recurso desconocido debe
regreso
un código de estado que no sea 200.

los HEAD El método es casi idéntico al GET, excepto sin el
cuerpo de respuesta
. En otras palabras, si GET /users devuelve una lista de
usuarios, entonces HEAD /users hará la misma solicitud pero no obtendrá
retroceder la lista de usuarios.

Las solicitudes HEAD son útil para comprobar qué hará una solicitud GET
regreso
antes de realizar una solicitud GET, como antes
descargar un archivo grande o una respuesta
cuerpo. Obtenga más información sobre las solicitudes HEAD en MDN.

Vale la pena señalar que no todos los terminales que admiten GET
admitirá HEAD; depende completamente de la API que esté probando.

Probando una API con solicitudes HEAD

Realizar solicitudes de API con HEAD métodos es en realidad una forma eficaz
de simplemente verificar que un recurso está disponible. Es bueno
Practique para tener una prueba para solicitudes HEAD en todos los lugares donde tenga una prueba
para solicitudes GET (siempre que la API lo admita).

Compruebe estas cosas cuando pruebe una API con solicitudes HEAD:

Otro caso útil para HEAD peticiones
es
Prueba de humo API –
hacer una solicitud HEAD contra cada punto final de API para asegurarse de que sean
disponible.

Por último, pero no menos importante, tenemos OPTIONS peticiones. Las solicitudes de OPCIONES son
uno de mis favoritos, aunque no tan ampliamente utilizado como el otro HTTP
métodos. En pocas palabras, una solicitud de OPCIONES debe devolver datos
describiendo que otro métodos y operaciones que admite el servidor

en la URL dada.

Las solicitudes de OPCIONES se definen y utilizan de manera más vaga que las demás,
haciéndolos un buen candidato para prueba de errores fatales de API. Si una
La API no espera una solicitud de OPCIONES, es bueno poner un caso de prueba
en el lugar que verifica el comportamiento defectuoso.

Probando una API con solicitudes OPTIONS

Probando un OPTIONS la solicitud depende del servicio web; si
o no lo apoya y lo que se supone que debe regresar será definir
cómo debes probarlo
.

Cómo validar un punto final usando OPCIONES:

Más recursos

Lo que he discutido anteriormente es solo un punto de partida para profundizar en
Métodos HTTP y prueba de varios recursos de una API. También asume
un caso en su mayoría ideal: en el mundo real, las API no están tan estructuradas como
los ejemplos anteriores. Esto hace que probar varios métodos contra una API
un forma eficaz de encontrar errores inesperados.

Este contenido se publicó originalmente aquí.