Hoe werkt het HTTP-protocol?
sobes.tech AI
Antwoord van AI
HTTP (Hypertext Transfer Protocol) — een toepassingslaagprotocol dat wordt gebruikt om bronnen te verkrijgen, zoals webpagina's. Het werkt volgens het "client-server" model.
De client (meestal een browser) stuurt een verzoek naar de server, die het verwerkt en een antwoord terugstuurt.
De belangrijkste onderdelen van het HTTP-bericht:
-
Startlijn: Bepaalt het type bericht (verzoek of antwoord) en de hoofdparameters.
- Verzoek: Methode (GET, POST, PUT, DELETE, enz.), pad naar de bron, protocolversie.
- Antwoord: Protocolversie, statuscode (200 OK, 404 Not Found, 500 Internal Server Error, enz.), tekstuele beschrijving van de status.
GET /index.html HTTP/1.1 // Voorbeeld van een startlijn van een verzoekHTTP/1.1 200 OK // Voorbeeld van een startlijn van een antwoord -
Headers: Bevatten meta-informatie over het bericht en de body van het bericht. Elke header wordt weergegeven als "HeaderNaam: Waarde".
- Verzoekheaders: Host, User-Agent, Accept, Content-Type, Content-Length, enz.
- Antwoordheaders: Content-Type, Content-Length, Server, Set-Cookie, enz.
Host: example.com // Voorbeeld van een Host-header User-Agent: Mozilla/5.0 // Voorbeeld van een User-Agent-header -
Lege regel: Scheidt headers van de berichtbody.
-
Berichtbody (Body): Bevat de overgedragen gegevens. Kan ontbreken in sommige verzoeken (bijvoorbeeld, GET) en antwoorden (bijvoorbeeld, 204 No Content). Bij POST- of PUT-verzoeken bevat de body meestal de verzonden gegevens. In antwoorden bevat de body de opgevraagde bron (bijvoorbeeld HTML-code, afbeeldingen, JSON).
<!DOCTYPE html> <html> <head> <title>Voorbeeld</title> </head> <body> <h1>Hallo!</h1> </body> </html>
Belangrijkste HTTP-methoden:
| Methode | Beschrijving | Gebruik |
|---|---|---|
| GET | Verzoekt een bron op de opgegeven URL. | Gegevens ophalen zonder de status van de server te wijzigen. |
| POST | Verstuurt gegevens voor verwerking op de server. | Formulieren verzenden, bestanden uploaden, bronnen creëren. |
| PUT | Werkt een bron bij of maakt een nieuwe aan op de URL. | Bestaande bronnen bijwerken. |
| DELETE | Verwijdert een bron op de URL. | Bronnen verwijderen. |
| HEAD | Verzoekt de headers van de bron zonder de body. | Metadata van de bron ophalen. |
HTTP is een stateloos protocol. Elke aanvraag is onafhankelijk. Mechanismen zoals cookies en sessies worden gebruikt om de staat te behouden.