Latest web development tutorials

Estructura del mensaje HTTP

HTTP es un cliente / servidor (C / S) modelo de arquitectura, para el intercambio de información a través de un enlace seguro, es un protocolo de petición / respuesta sin estado.

A HTTP "cliente" es una aplicación (navegador Web o cualquier otro cliente), mediante el envío de una solicitud para conectarse al servidor para lograr uno o más de los propósitos de servidor HTTP.

Un "servidor" HTTP es también una aplicación (por lo general un servicio web, como Apache servidor web o un servidor IIS, etc.), mediante la recepción de la solicitud del cliente para que el cliente envíe datos de respuesta HTTP.

HTTP utiliza el identificador uniforme de recursos (Identificadores Uniformes de Recursos, URI) para transmitir datos y establecer una conexión.

Una vez establecida la conexión, el mensaje de datos en Internet a través de formato de correo electrónico similar a la utilizada [RFC5322] y Extensiones multipropósito de correo Internet (MIME) [RFC2045] para transmitir.


mensaje de petición de cliente

El cliente envía una solicitud HTTP al mensaje de petición de servidor incluye el siguiente formato: El formato general de la línea de solicitud (línea de petición), encabezado de solicitud (cabecera), líneas en blanco, y los datos de solicitud de cuatro partes, la siguiente figura muestra los paquetes de petición .

2012072810301161


mensaje de respuesta del servidor

respuesta HTTP también se compone de cuatro partes, a saber: la línea de estado, los encabezados de los mensajes, una línea en blanco y el cuerpo de la respuesta.

HttpMessage



Ejemplos

El siguiente ejemplo es un poco de uso típico GET para pasar los datos de la instancia:

Las solicitudes de cliente:

GET /hello.txt HTTP/1.1
User-Agent: curl/7.16.3 libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
Host: www.example.com
Accept-Language: en, mi

respuesta del servidor:

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
ETag: "34aa387-d-1568eb00"
Accept-Ranges: bytes
Content-Length: 51
Vary: Accept-Encoding
Content-Type: text/plain

salida:

Hello World! My payload includes a trailing CRLF.