Latest web development tutorials

Structure de message HTTP

HTTP est un client / serveur (C / S) modèle d'architecture, d'échanger des informations via une liaison sécurisée, est un protocole de requête / réponse apatride.

Un HTTP «client» est une application (navigateur Web ou tout autre client), en envoyant une demande de connexion au serveur pour atteindre un ou plusieurs des objectifs du serveur HTTP.

Un HTTP "serveur" est également une application (généralement un service Web, tels que Apache Web Server ou d'un serveur IIS, etc.), en recevant la demande du client au client d'envoyer des données de réponse HTTP.

HTTP utilise l'identificateur uniforme de ressource (Uniform Resource Identifiers, URI) pour transmettre des données et établir une connexion.

Une fois la connexion établie, le message de données sur Internet via le format similaire à celui utilisé [RFC5322] e-mail et Multipurpose Internet Mail Extensions (MIME) [__gVirt_NP_NN_NNPS<__ RFC2045] pour transmettre.


message de demande de client

Le client envoie une requête HTTP au message de demande de serveur inclut le format suivant: Le format général de la ligne de demande (ligne de demande), tête de requête (en-tête), des lignes vides, et les données de demande de quatre parties, la figure suivante montre les paquets de demande .

2012072810301161


un message de réponse du serveur

réponse HTTP se compose également de quatre parties, à savoir: la ligne d'état, les en-têtes de message, une ligne vide et le corps de la réponse.

HttpMessage



Exemples

L'exemple suivant est un peu utilisation typique GET pour passer les données d'instance:

Les demandes des clients:

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

Réponse du serveur:

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

sortie:

Hello World! My payload includes a trailing CRLF.