Sobes.tech
Junior

Erzählen Sie über HTTP-Statuscodes.

sobes.tech KI

Antwort von AI

HTTP-Statuscodes sind dreistellige Ganzzahlen, die vom Server als Antwort auf eine Client-Anfrage zurückgegeben werden. Sie geben das Ergebnis der Anfrage an und werden in fünf Klassen unterteilt:

  • 1xx Informativ: Die Anfrage wurde empfangen und die Verarbeitung wird fortgesetzt.
    • 100 Continue: Der Server hat den Anfangsteil der Anfrage erhalten, und der Client kann den Rest senden.
    • 101 Switching Protocols: Der Server versteht und ist bereit, die vom Client angeforderten Protokolländerungen vorzunehmen.
  • 2xx Erfolg: Die Anfrage wurde erfolgreich verarbeitet, verstanden und akzeptiert.
    • 200 OK: Standardantwort bei erfolgreichen HTTP-Anfragen.
    • 201 Created: Die Anfrage wurde abgeschlossen und eine neue Ressource wurde erstellt.
    • 204 No Content: Der Server hat die Anfrage erfolgreich verarbeitet, aber es gibt keinen Inhalt in der Antwort.
  • 3xx Weiterleitung: Zusätzliche Aktionen sind erforderlich, um die Anfrage abzuschließen.
    • 301 Moved Permanently: Die angeforderte Ressource hat eine neue permanente URI.
    • 302 Found: Die angeforderte Ressource wurde vorübergehend an eine andere URI verschoben.
    • 304 Not Modified: Die Ressource hat sich seit der letzten Anfrage nicht geändert.
  • 4xx Client-Fehler: Die Anfrage enthält einen Syntaxfehler oder kann nicht verarbeitet werden.
    • 400 Bad Request: Der Server konnte die Anfrage aufgrund ungültiger Syntax nicht verstehen.
    • 401 Unauthorized: Für den Zugriff auf die Ressource ist eine Authentifizierung erforderlich.
    • 403 Forbidden: Der Server hat die Anfrage verstanden, aber verweigert die Autorisierung.
    • 404 Not Found: Der Server kann die angeforderte Ressource nicht finden.
  • 5xx Server-Fehler: Der Server konnte eine korrekt formulierte Anfrage nicht ausführen.
    • 500 Internal Server Error: Allgemeiner Serverfehler, der bei der Verarbeitung auftrat.
    • 502 Bad Gateway: Der Server, der als Gateway oder Proxy fungiert, erhielt eine ungültige Antwort vom übergeordneten Server.
    • 503 Service Unavailable: Der Server kann die Anfrage momentan aufgrund vorübergehender Überlastung oder Wartung nicht bearbeiten.

Beispiele für die Verwendung in Tests:

  • API-Tests: Überprüfung, ob die zurückgegebenen Statuscodes den erwarteten entsprechen (z.B. 200 OK bei erfolgreichem Datenabruf, 404 Not Found bei nicht vorhandenen Ressourcen).
  • Webanwendungstests: Überprüfung von Weiterleitungen (3xx-Statuscodes), Benutzerfehlern (4xx-Statuscodes), Funktionalität bei Belastung (503).

Beispiel für die Überprüfung des Statuscodes in Python mit requests:

import requests

url = "https://www.example.com"
response = requests.get(url)

# Überprüfen, ob die Anfrage erfolgreich war (Statuscode 2xx)
if response.status_code == 200:
    print("Anfrage erfolgreich.")
else:
    print(f"Fehler bei der Anfrage. Statuscode: {response.status_code}")