HTTP-Statuscode-Referenz
HTTP-Statuscodes sind dreistellige Zahlen, die ein Server als Antwort auf eine Client-Anfrage zurückgibt. Die erste Ziffer definiert die Kategorie: 1xx informativ, 2xx Erfolg, 3xx Weiterleitung, 4xx Client-Fehler und 5xx Server-Fehler. Jeder Webentwickler und API-Konsument begegnet diesen Codes täglich, und zu wissen, was sie bedeuten, verkürzt die Debugging-Zeit.
Verwendung
- Suche nach Nummer oder Name. Gib einen Statuscode wie “404” oder ein Schlüsselwort wie “redirect” ein, um die Liste zu filtern
- Nach Kategorie filtern. Klicke auf einen Kategorie-Tab, um nur informative, Erfolgs-, Weiterleitungs-, Client-Fehler- oder Server-Fehlercodes zu sehen
- Code erweitern. Klicke auf eine beliebige Statuscode-Zeile, um die detaillierte Beschreibung zu sehen
- Kopieren. Klicke auf den Kopieren-Button, um Code und Namen in die Zwischenablage zu kopieren
Die Kategorien der HTTP-Statuscodes verstehen
1xx Informativ
Vorläufige Antworten. Der Server hat die Anfrage erhalten und der Client soll fortfahren oder warten. Du siehst sie selten direkt. Der praktischste ist 101 Switching Protocols, wie HTTP auf WebSocket upgradet.
2xx Erfolg
Die Anfrage wurde empfangen, verstanden und angenommen. 200 OK ist die Standard-Erfolgsantwort. 201 Created ist die korrekte Antwort für einen POST, der eine neue Ressource erstellt. 204 No Content wird für ein erfolgreiches DELETE zurückgegeben, wenn nichts zurückzugeben ist. Den richtigen 2xx-Code zu verwenden, macht APIs selbstdokumentierend.
3xx Weiterleitung
Weitere Aktionen sind erforderlich, um die Anfrage abzuschließen, normalerweise durch Befolgen eines Location-Headers. 301 und 308 sind permanente Weiterleitungen (Suchmaschinen übertragen das Ranking). 302 und 307 sind temporär (Suchmaschinen behalten die ursprüngliche URL). Der Unterschied zwischen den gepaarten Codes: 307/308 garantieren die Methodenerhaltung, während 301/302 POST in GET ändern können.
4xx Client-Fehler
Die Anfrage enthält etwas Falsches. 400 Bad Request für ungültige Syntax. 401 Unauthorized für fehlende Authentifizierung. 403 Forbidden für unzureichende Berechtigung. 404 Not Found für nicht existierende Ressource. 429 Too Many Requests für Ratelimiting. Die 4xx-Kategorie ist der Bereich, in dem die meisten Entwickler die meiste Zeit mit Debuggen verbringen.
5xx Server-Fehler
Der Server konnte eine gültige Anfrage nicht verarbeiten. 500 Internal Server Error ist die Standard-Fangnetz-Antwort. 502 Bad Gateway und 504 Gateway Timeout deuten auf Netzwerkprobleme zwischen Diensten hin. 503 Service Unavailable deutet auf Überlastung oder Wartung hin. Anwendungsserver-Logs sind für die Diagnose von 5xx unerlässlich.
Kurzreferenztabelle
1xx Informativ
| Code | Name | Beschreibung |
|---|---|---|
| 100 | Continue | Client soll mit der Anfrage fortfahren |
| 101 | Switching Protocols | Server hat Protokoll-Upgrade akzeptiert |
| 102 | Processing | Server verarbeitet noch (WebDAV) |
| 103 | Early Hints | Server sendet Header vorab |
2xx Erfolg
| Code | Name | Beschreibung |
|---|---|---|
| 200 | OK | Anfrage erfolgreich |
| 201 | Created | Ressource erfolgreich erstellt |
| 202 | Accepted | Anfrage zur asynchronen Verarbeitung angenommen |
| 204 | No Content | Erfolg ohne Antwortkörper |
| 206 | Partial Content | Teilantwort (Bereichsanfragen) |
3xx Weiterleitung
| Code | Name | Beschreibung |
|---|---|---|
| 301 | Moved Permanently | Permanente Weiterleitung |
| 302 | Found | Temporäre Weiterleitung |
| 303 | See Other | Nach POST zu GET weiterleiten |
| 304 | Not Modified | Ressource nicht geändert (Cache) |
| 307 | Temporary Redirect | Temporär, bewahrt Methode |
| 308 | Permanent Redirect | Permanente, bewahrt Methode |
4xx Client-Fehler
| Code | Name | Beschreibung |
|---|---|---|
| 400 | Bad Request | Syntaxfehler in der Anfrage |
| 401 | Unauthorized | Authentifizierung erforderlich |
| 403 | Forbidden | Keine Zugriffsberechtigung |
| 404 | Not Found | Ressource nicht gefunden |
| 405 | Method Not Allowed | HTTP-Methode nicht unterstützt |
| 409 | Conflict | Konfliktierender Zustand |
| 410 | Gone | Ressource dauerhaft entfernt |
| 422 | Unprocessable Entity | Semantischer Validierungsfehler |
| 429 | Too Many Requests | Ratelimit überschritten |
5xx Server-Fehler
| Code | Name | Beschreibung |
|---|---|---|
| 500 | Internal Server Error | Interner Serverfehler |
| 501 | Not Implemented | Funktionalität nicht implementiert |
| 502 | Bad Gateway | Ungültige Antwort vom Upstream |
| 503 | Service Unavailable | Dienst vorübergehend nicht verfügbar |
| 504 | Gateway Timeout | Upstream hat nicht rechtzeitig geantwortet |
| 505 | HTTP Version Not Supported | HTTP-Version nicht unterstützt |