Evolución del protocolo HTTP
HTTP (HyperText Transfer Protocol) es el protocolo que se usa para la transferencia de datos entre el servidor web y los clientes. Ha evolucionado, desde un protocolo para el intercambio de archivos en un laboratorio, al actual laberinto de Internet, sirviendo ahora para el intercambio de imágenes, videos en HD y en 3D.
.
Evolución de HTTP
- HTTP/0.9 - El protocolo de una sola línea: Lanzado en 1991, consistía en una petición de una sola línea por medio del único método posible
GET
, seguido por la dirección del recurso a pedir. Esta versión no usaba cabeceras HTTP, por eso solo se podían transmitir archivos HTML. Tampoco había información de error, en caso de un problema, el archivo HTML era devuelto con una descripción del error dentro de él para su análisis manual.
. - HTTP/1.0 - Desarrollando expansibilidad: Lanzado en 1996, en esta versión se añade la versión HTTP/1.0 a la línea de la petición
GET
. También se envía un código de estado al comienzo de la respuesta. Se presenta el concepto de cabeceras HTTP para petición y respuesta permitiendo la transmisión de metadatos. Con el uso de cabeceras HTTP, se pudieron transmitir otros documentos como imágenes.
. - HTTP/1.1 - El protocolo estándar: Lanzado en 1997, agregando mejoras en la gestión de la conexión y el caché, así como soporte para peticiones pipelining y host virtuales. Este protocolo fue evolucionando en dos versiones lanzadas en 1999 y 2014 (previsión de HTTP/2).
. - HTTP/2 - Un protocolo para un mayor rendimiento: Estandarizado de manera oficial en 2015, este protocolo binario no se puede leer directamente, ni crear manualmente. Gracias a este cambio es posible utilizar técnicas de optimización. Es un protocolo multiplexado con peticiones paralelas sobre la misma conexión, no está sujeto a un orden de los mensajes. Comprime las cabeceras, ya que son similares en un grupo de peticiones.
.
Métodos de HTTP
HTTP define un conjunto de métodos de petición para indicar la acción que se desea realizar para un recurso determinado. Aunque estos también pueden ser sustantivos, estos métodos de solicitud a veces son llamados HTTP verbs.
.
-
GET
: Este método solicita una representación de un recurso específico. Las peticiones que usan este método solo deben recuperar datos.
. -
HEAD
: Este método pide una respuesta idéntica a la de una peticiónGET
, pero sin el cuerpo de la respuesta.
. -
POST
: Este método se utiliza para enviar una entidad o recurso en específico, causando a menudo un cambio en el estado o efectos secundarios en el servidor.
. -
PUT
: Este método reemplaza todas las respuestas actuales del recurso de destino con la carga útil de la petición. -
DELETE
: Este método borra un recurso en específico.
. -
CONNECT
: Este método establece un túnel hacia el servidor identificado por el recurso.
. -
OPTIONS
: Este método se utiliza para describir las opciones de comunicación para el recurso de destino.
. -
TRACE
: Este método realiza una prueba de bucle de retorno de mensaje a lo largo de la ruta al recurso de destino.
. -
PATCH
: Este método se usa para aplicar modificaciones parciales a un recurso.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?