HTTP-Statuscodes

Ein Statuscode ist die serverseitige Zusammenfassung des Ergebnisses einer Anfrage. Ein Programm kann damit arbeiten, ohne den Anfragetext lesen zu müssen. Die erste Ziffer kennzeichnet die Klasse: 2xx bedeutet erfolgreich, 3xx bedeutet, dass ein Server die Anfrage nicht beantworten kann, 4xx bedeutet, dass die Anfrage fehlerhaft war, und 5xx bedeutet, dass der Server ausgefallen ist. Die restlichen Ziffern präzisieren die Bedeutung innerhalb dieser Klasse.

So funktioniert es

Clients verzweigen zunächst auf der Klassenebene und anschließend auf dem exakten Code: Ein 2xx-Statuscode wird verarbeitet, ein 3xx-Statuscode wird weiterverfolgt, ein 4xx-Statuscode wird an den Ersteller der Anfrage zurückgemeldet, und ein 5xx-Statuscode kann wiederholt werden, falls die Anfrage idempotent war. Spezifische Codes enthalten dann spezifische Anweisungen – 401 bedeutet Authentifizierung, 429 bedeutet Verlangsamung, 412 bedeutet erneutes Lesen vor dem Schreiben.

Das Missverständnis

Der eigentliche Antworttext ist der Body, der Code dient lediglich der Dekoration. Caches, Proxys, Wiederholungslogik, Überwachungssysteme und Browser reagieren alle auf die Statuszeile, ohne den Body zu lesen; eine API, die 200 mit {"error": …} zurückgibt, ist für all diese Systeme unsichtbar, und somit auch ihre Fehlerrate.

Probieren Sie es hier aus

Der Statuscode-Index verlinkt für jeden von dieser Playground zurückgegebenen Code eine Seite mit den zugehörigen Endpunkten. GET /faults/v1/status/{code} gibt bei Anfrage einen beliebigen Code von 200 bis 599 zurück.

Quellen

Weitere Begriffe

Diese Seite auf Englisch lesen

Alle Glossarbegriffe · Testtechniken · Alle 39 Mock-REST-APIs

Zuletzt aktualisiert