La solicitud HTTP (o HTTP Request), denominada también petición HTTP, es un mensaje que el Cliente envía al Servidor.
A continuación se presenta un ejemplo de este mensaje HTTP. Estudiemos su estructura:
![Petición HTTP](m2_img0.1.png)
El mensaje está formato por dos partes: línea de inicio (línea 1 conformada por método, path y versión de HTTP) y cabeceras (o headers, en inglés) (zona conformada por las línea 2 y 3 donde cada línea es una cabecera). No te preocupes por entender el texto de cada cabecera, eso ya lo veremos a fondo en una sección posterior. Como lo habrás notado, este mensaje HTTP no tiene cuerpo.
Línea de inicio
Esta línea está conformada por:
- El método: En nuestro ejemplo, la palabra GET es un método/comando de HTTP que significa “Obtener”
- Path (o ruta): camino o path del recurso (hipertexto) que se desea "obtener". En el ejemplo, “/mipagina.html”
- Versión del protocolo: especifica la versión del protocolo HTTP utilizado. En el ejemplo: versión 1.1 de HTTP
De esta manera, si unimos todo, la primera línea se puede traducir en "Oye servidor, necesito obtener la página con el nombre mipagina.html y para esto, quiero que sepas que te hago la solicitud usando el protocolo HTTP en versión 1.1"
Cabecera de Petición
Las líneas 2 y 3 son las cabeceras. Una cabecera es información adicional acerca de la conexión que es enviada al servidor. Existe una gran variedad de cabeceras, sin embargo, hablaremos más a fondo sobre las cabeceras en una lección posterior. Por el momento, lo que nos interesa es al menos saber cuáles son las cabeceras de nuestro ejemplo.
- La cabecera Host (línea 2) indica el nombre del servidor hacia donde se envía la petición,
- La cabecera Accept-Language (línea 3) indica el idioma aceptado por el Cliente, en este caso español.
Nota: Es importante notar que, aunque no se lo puede ver, el mensaje (petición HTTP) termina con un espacio en blanco. En nuestro ejemplo, después de la cabecera Accept-Language existe un espacio en blanco.