Sobes.tech
Middle

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:

  1. 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-Startzeile
    
    HTTP/1.1 200 OK // Beispiel für eine Antwort-Startzeile
    
  2. 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
    
  3. Leere Zeile: Trennt die Header vom Nachrichtentext.

  4. 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.