struttura del messaggio HTTP
HTTP è un client / server (C / S) modello di architettura, a scambiare informazioni attraverso un collegamento sicuro, è un protocollo di richiesta / risposta senza stato.
Un HTTP "client" è un programma (browser Web o qualsiasi altro client), con l'invio di una richiesta di connessione al server per realizzare uno o più degli scopi del server HTTP.
Un "server" HTTP è anche un'applicazione (di solito un servizio Web, come Apache Web Server o server IIS, ecc), ricevendo la richiesta del client al client per inviare dati di risposta HTTP.HTTP utilizza identificatore uniforme di risorse (Uniform Resource Identifiers, URI) per trasmettere i dati e stabilire una connessione.
Una volta stabilita la connessione, il messaggio di dati su Internet tramite e-mail in formato simile a quello utilizzato [RFC5322] e Multipurpose Internet Mail Extensions (MIME) [RFC2045] per trasmettere.
messaggio di richiesta del cliente
Il client invia una richiesta HTTP al messaggio di richiesta server include il seguente formato: Il formato generico della richiesta di linea (linea di richiesta), richiesta di intestazione (header), righe vuote, e richiedere i dati di quattro parti, la figura seguente mostra i pacchetti di richiesta .
messaggio di risposta del server
risposta HTTP si compone anche di quattro parti, vale a dire: la riga di stato, le intestazioni dei messaggi, una riga vuota e il corpo della risposta.
Esempi
L'esempio che segue è un po 'uso tipico GET per passare i dati di istanza:
Le richieste dei client:
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
Risposta del server:
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
uscita:
Hello World! My payload includes a trailing CRLF.