4.1 Lista de métodos HTTP

La primera palabra en una solicitud HTTP es el nombre del método . Incluso hay alguna analogía con los métodos de llamada en Java. El método en la solicitud HTTP define la operación básica que se realizará en el recurso.

¿Qué tipo de recurso? La cuestión es que en los albores de la World Wide Web, los servidores simplemente almacenaban archivos HTML, respectivamente, la solicitud era para dicho archivo y describía alguna acción que debe realizarse con el recurso/archivo.

El estándar HTTP especifica los siguientes métodos:

# Método Descripción
1 CONSEGUIR Se utiliza para consultar el contenido del recurso especificado.
2 CORREO Se utiliza para transferir datos del cliente al servidor. Cambia el estado de un recurso en el servidor.
3 PONER Se utiliza para transferir datos del cliente al servidor. Crea un nuevo recurso en el servidor.
4 BORRAR Elimina el recurso especificado en el servidor.
5 CABEZA Similar a GET, pero sin cuerpo de respuesta. Necesario para obtener encabezados de respuesta
6 OPCIONES Solicita al servidor una lista de métodos admitidos para el recurso especificado.
7 RASTRO método de servicio. Le permite averiguar si la solicitud está siendo modificada por los servidores a través de los cuales pasa.
8 CONECTAR método de servicio. Se utiliza para establecer una conexión segura.

4.2 Método OBTENER

El método GET es el método HTTP más popular. Esto es lo que llama el navegador cuando envía una solicitud al servidor para la página siguiente.

Por ejemplo, si siguió el enlace http://codegym.cc/path/resource?param1=value1¶m2=value2 en el navegador, entonces el navegador enviará una solicitud HTTP al servidor CodeGym que comenzará con esta línea de inicio :

GET /path/resource?param1=value1&param2=value2 HTTP/1.1

Como resultado, el servidor deberá enviar una respuesta HTTP al navegador, en la que escribir el estado de la solicitud y también enviar el recurso solicitado.

Se supone que llamar al método GET varias veces no cambia el estado del servidor, y el servidor debe devolver la misma respuesta cada vez . Por lo tanto, el protocolo tiene un control complicado sobre el almacenamiento en caché de objetos.

En primer lugar, los recursos recibidos mediante la solicitud GET, el navegador puede almacenar en caché a su discreción (hay matices).

En segundo lugar, al enviar una solicitud al servidor, puede especificar un encabezado especial If-Modified-Sincey un archivo date. Si el recurso/documento solicitado ha cambiado desde la fecha especificada, el servidor lo enviará. Si no se modifica, no se pasa el cuerpo del recurso. Se supone que está en caché en el cliente.

El almacenamiento en caché de páginas (solicitudes GET) se usa todo el tiempo, por lo que le aconsejo que analice este problema.

4.3 Métodos POST y PUT

El método POST se utiliza para actualizar un recurso en el servidor. Por ejemplo, cuando carga una imagen en el servidor, su navegador envía una solicitud POST.

Considere una solicitud HTTP que comenzará con esta línea de inicio:

POST /path/resource?param1=value1&param2=value2 HTTP/1.1
headers…

<request body>

Como resultado, el servidor deberá enviar una respuesta HTTP al navegador, en la que escribirá el estado de la solicitud y también enviará el recurso modificado. Llamar al método POST varias veces cambia el estado del servidor y el servidor puede devolver una respuesta diferente cada vez .

GET y POST son las dos solicitudes más comunes en la web. Para que le resulte más fácil recordar cómo funcionan los métodos, considere la siguiente tabla:

CONSEGUIR CORREO PONER
Pedido solo URL URL y cuerpo de la solicitud URL y cuerpo de la solicitud
Respuesta Código de respuesta y cuerpo Código de respuesta y cuerpo Código de respuesta

Puede leer más sobre la solicitud POST en el enlace .

4.4 Método ELIMINAR

Y por último, información sobre el método DELETE . Todo es simple aquí.

Por ejemplo, queremos eliminar un determinado recurso en el servidor. Le enviamos una solicitud como:

DELETE  /path/resource?param1=value1&param2=value2 HTTP/1.1

Al recibir esta solicitud, el servidor eliminará el recurso especificado. A menos, por supuesto, que tenga los derechos para eliminarlo.