Wie funktioniert das HTTP-Protokoll?
sobes.tech KI
Antwort von AI
HTTP (Hypertext Transfer Protocol) — ein Anwendungsprotokoll auf der Transportschicht, das zum Abrufen von Ressourcen wie Webseiten verwendet wird. Es arbeitet nach dem "Client-Server"-Modell.
Der Client (meist ein Browser) sendet eine Anfrage an den Server, der die Anfrage verarbeitet und eine Antwort sendet.
Die Hauptbestandteile der HTTP-Nachricht:
-
Startzeile: Bestimmt den Nachrichtentyp (Anfrage oder Antwort) und die Hauptparameter.
- Anfrage: Methode (GET, POST, PUT, DELETE usw.), Pfad zur Ressource, Protokollversion.
- Antwort: Protokollversion, Statuscode (200 OK, 404 Not Found, 500 Internal Server Error usw.), Textbeschreibung des Status.
GET /index.html HTTP/1.1 // Beispiel für eine Anfrage-StartzeileHTTP/1.1 200 OK // Beispiel für eine Antwort-Startzeile -
Header: Enthalten Metainformationen über die Nachricht und den Nachrichtentext. Jeder Header wird als "HeaderName: Wert" dargestellt.
- Request-Header: Host, User-Agent, Accept, Content-Type, Content-Length usw.
- Response-Header: Content-Type, Content-Length, Server, Set-Cookie usw.
Host: example.com // Beispiel für einen Host-Header User-Agent: Mozilla/5.0 // Beispiel für einen User-Agent-Header -
Leere Zeile: Trennt die Header vom Nachrichtentext.
-
Nachrichtentext (Body): Enthält die übertragenen Daten. Kann in manchen Anfragen (z.B. GET) und Antworten (z.B. 204 No Content) fehlen. Bei POST- oder PUT-Anfragen enthält der Body meist die gesendeten Daten. In Antworten enthält der Body die angeforderte Ressource (z.B. HTML-Code, Bilder, JSON).
<!DOCTYPE html> <html> <head> <title>Beispiel</title> </head> <body> <h1>Hallo!</h1> </body> </html>
Hauptmethoden von HTTP:
| Methode | Beschreibung | Verwendung |
|---|---|---|
| GET | Fordert eine Ressource unter der angegebenen URL an. | Daten abrufen, ohne den Serverzustand zu ändern. |
| POST | Sendet Daten zur Verarbeitung an den Server. | Formulare, Datei-Uploads, Ressourcen erstellen. |
| PUT | Aktualisiert oder erstellt eine Ressource unter der angegebenen URL. | Bestehende Ressourcen aktualisieren. |
| DELETE | Löscht eine Ressource unter der angegebenen URL. | Ressourcen löschen. |
| HEAD | Fordert die Header der Ressource ohne deren Body an. | Metainformationen der Ressource abrufen. |
HTTP ist ein zustandsloses Protokoll. Jede Anfrage ist unabhängig. Um den Zustand aufrechtzuerhalten, werden Mechanismen wie Cookies und Sitzungen verwendet.