J'ai récemment commencé mon travail en tant que développeur de backend d'application web. Je suis un peu coincé dans la compréhension du cycle de vie d'une demande Http.
Ce que j'ai compris c'est
Après cela, je suis perdu avec
Je pense que vous vous trompez un peu sur votre compréhension.
Si vous allez sur www.google.com (n'utilisez aucun formulaire, voulez simplement le site), voici ce qui se passe:
GET / HTTP/1.1
Host: www.google.com
GET, PUT, POST, DELETE et autres sont méthodes de requête HTTP . Ils ont une signification particulière que vous pouvez voir dans le RFC.
Cookies sont couramment utilisés pour identifier le même utilisateur sur plusieurs requêtes HTTP, appelées sessions. Par conséquent, ces cookies sont appelés cookies de session
Vous pouvez déboguer la communication à l'aide d'un outil de détection de réseau, par exemple Wireshark . Firefox a un plugin tiers appelé Tamper Data qui peut modifier la demande avant qu'elle ne soit envoyée au serveur.
Le HTTP RFC est une bonne source de la façon dont tout cela fonctionne.
J'espère que ça aide.
Cela fait partie des questions d'entrevue les plus populaires posées dans diverses sociétés de produits.
HTTP est un protocole de demande-réponse. Par exemple, un agent utilisateur lance une demande à un serveur, généralement en ouvrant une connexion TCP/IP à un port particulier sur un hôte (port 80 par défaut). La demande elle-même comprend:
une ligne de demande,
un ensemble d'en-têtes de demande et une entité.
Un serveur HTTP écoutant sur ce port attend que le client envoie un message de demande. Dès réception de la demande, le serveur envoie une réponse qui comprend:
une ligne d'état, un ensemble d'en-têtes de réponse et une entité. L'entité dans la demande ou la réponse peut être considérée simplement comme la charge utile, qui peut être des données binaires. Les autres éléments sont lisibles ASCII caractères. Lorsque la réponse est terminée, le navigateur ou le serveur peut mettre fin à la connexion TCP/IP, ou le navigateur peut envoyer une autre demande.
tandis que le serveur reçoit la demande du navigateur, le navigateur sera lié à un port de l'hôte, l'adresse IP et le numéro de port du navigateur seront joints à la demande qui sera envoyée au serveur. le serveur envoie la réponse à l'adresse IP et au numéro de port
J'ai trouvé cette ressource très utile pour comprendre les étapes suivies au cours de la HTTP lifecycle
: assez intéressant en fait, n'était pas au courant de toutes les étapes intermédiaires, en particulier avec la vérification du cache lors de la détermination du IP Address
d'une URL.