HTTP

Cet article nécessite une relecture rédactionnelle. Voici comment vous pouvez aider.

Hypertext Transfer Protocol (HTTP) est un protocole de  la couche application servant à transmettre des documents hypermedia, comme HTML. Il a été conçu pour communiquer entre les navigateurs web et les serveurs web, bien qu'il puisse être utilisé à d'autres fins. Il suit le modèle classique client-serveur, avec un client qui ouvre une connexion, faire une requête et attends jusqu'à recevoir une réponse. C'est aussi un protocole sans état, ce qui signifie que le serveur ne converse aucune données (état) entre deux requêtes. Bien que généralement basé sur une couche TCP/IP, il peut aussi être utilisé sur toute couche de transport fiable,qui est un protocole qui ne perd pas de messages silencieusement.

Tutoriels

Apprenez comment utiliser HTTP avec des guides et des tutoriels.

Aperçu du protocole HTTP
Présentation des fonctionnalités basiques du protocole client-serveur : ce qu'il peut faire et pour quels utilisations il est prévue.
Evolution du protocole HTTP
Description rapide des changements entre HTTP dans ses premières versions et le moderne HTTP/2.
Les différents messages HTTP
Description du type et de la structure des différentes sortes de messages de HTTP/1.x et HTTP/2.
Démonstration de session HTTP
Démonstration et explication du déroulement classique d'une session HTTP.
Gestion des connexions HTTP/1.x
Description des forces et faiblesse des trois modèles de management de connexion disponible dans  HTTP/1.x.
Le cache HTTP
Le cache est l'un des outils majeurs pour de bonnes performances sur les sites Web. Cet article présente les différents type de cache et comment utiliser les entêtes HTTP pour configurer et utiliser le cache.
Les cookies et HTTP
La façon donc les cookies fonctionnent sont définie par la  RFC 6265. Lors de la réception d'une requête HTTP, un serveur peut envoyer un entête Set-Cookie avec la réponse. En suite le client renvoie la valeur du cookie, dans la forme d'un en-tête HTTP  Cookie, avec chaque requête vers le même serveur.  Un délai d'expiration peut être spécifié. Un coookie peut aussi être restreint à un domaine spécifique et un chemin (path).
Contrôle d'accès HTTP (CORS)
Les requêtes HTTP de type Cross-site sont des requêtes HTTP pour des ressources depuis un domaine différent que le domaine de la ressource qui fait la demande. Par exemple, une ressources chargée depuis un domaine A (http://domaina.example/), comme une page HTML, fait une requête pour une ressource sur un domaine B (http://domainb.foo/), comme une image, en utilisant la balise img (http://domainb.foo/image.jpg). Ceci est très courant sur le web de nos jours — les pages chargent de nombreuses ressources en utilsant les requêtes cross-site, notamment des feuilles de style CSS, des images, des scripts et d'autres ressources.
Pré-chargement DNS (prefetching)
Firefox et la majorité des autres naviateurs moderne utilisent le DNS prefetching. Cela signifie que les navigateurs réalisent de façon pro-active la résolution de nom de domaine sur un lien que l'utilisateur pourrait choisir de suivre et sur les références des ressouces comme les images, CSS et JavaScript. Ce pré-chargement est réalisé en arrière-plan ainsi, la recherche DNS est déjà résolu au moment où cette élément est demandé. Cela réduit la latence lorsque, par exemple l'utilisateur clique sur un lien.

Références

Naviguez dans la documentation détaillée de HTTP.

En-tête HTTP
Les messages d'en-tête HTTP sont utilisés pour décrire précisement la ressource ou le comportement du client ou du serveur. Un en-tête propriétaire sur mesure peut être ajouté en utilsant le préfix 'X-' ; d'autres sont disponible dans le registe de l'IANA, dont le contenu original a été défini dans la RFC 4229. L'IANA maintient aussi un registre des nouveaux messages d'en-tête HTTP.
Les méthodes de requête HTTP
Différentes opérations peuvent être fait avec HTTP : GET, POST, mais aussi moins couramment des requêtes comme  OPTIONS, DELETE ou TRACE.
Les codes de réponse HTTP
Les codes de réponse HTTP indiquent si une requête HTTP a été complétée avec succès. Les réponses sont regroupées en cinq classes : les réponses informationnelles, les réponses de succès, les redirections, les erreurs client et les erreurs serveur.

Outils & ressources

Outils utiles pour utiliser et debbugger vos connextions HTTP.

Firefox Developer Tools
Network monitor
RedBot
Un outil pour vérifier vos en-têtes relatifs aux caches

Étiquettes et contributeurs liés au document

Étiquettes : 
 Contributeurs à cette page : eagleusb, dattaz, SphinxKnight, jswisher
 Dernière mise à jour par : eagleusb,