Erfolg, ohne etwas zurückzusenden.
Wann du ihn verwendest
Ein DELETE oder PUT, das keinen Body zurückgibt.
Gut zu wissen
Eine 204 darf keinen Body haben. Schreibt dein Framework trotzdem JSON, können HTTP/1.1-Clients und Proxys die zusätzlichen Bytes als Anfang der nächsten Antwort lesen, was Keep-alive-Verbindungen auf verwirrende Weise kaputtmacht. In fetch ist response.ok bei 204 true, aber response.json() wirft beim leeren Body einen Fehler, also prüfe vor dem Parsen auf Status 204.
Liefert ein Link oder ein Formularversand im Browser 204, bleibt die aktuelle Seite unverändert: keine Navigation, kein Fehler. Das macht 204 praktisch für Beacons und Tracking-Endpunkte. 204 ist außerdem die übliche Antwort auf einen CORS-Preflight mit OPTIONS. Nutze ihn nicht für ein GET, das nichts gefunden hat; gib 404 zurück oder 200 mit einer leeren Liste, damit Clients die Fälle unterscheiden können.
Erfolg (2xx)
2xx-Codes bedeuten Erfolg: Der Server hat die Anfrage erhalten, verstanden und angenommen.
So sieht es aus
HTTP/1.1 204 No ContentSo sendest du ihn
| Node.js / Express | res.status(204).end() |
|---|---|
| Python / Flask | return '', 204 |
| nginx | return 204; |
So prüfst du ihn
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/