Sukces, bez treści do odesłania.
Kiedy go używać
DELETE lub PUT, które nie zwraca treści.
Warto wiedzieć
Odpowiedź 204 nie może mieć treści. Jeśli Twój framework mimo to zapisze JSON, klienty i proxy HTTP/1.1 mogą odczytać nadmiarowe bajty jako początek następnej odpowiedzi, co w mylący sposób psuje połączenia keep-alive. W fetch response.ok ma wartość true dla 204, ale response.json() rzuca wyjątek przy pustej treści, więc przed parsowaniem sprawdź, czy status to 204.
W przeglądarce link lub wysłanie formularza, które zwraca 204, zostawia bieżącą stronę bez zmian: bez nawigacji, bez błędu. Dlatego przydaje się do beaconów i endpointów śledzących. 204 to też typowa odpowiedź na preflight CORS, czyli żądanie OPTIONS. Nie używaj go dla GET, który nic nie znalazł; zwróć 404 albo 200 z pustą listą, żeby klienty mogły odróżnić te przypadki.
Sukces (2xx)
Kody 2xx oznaczają sukces: serwer odebrał, zrozumiał i przyjął żądanie.
Jak to wygląda
HTTP/1.1 204 No ContentJak go wysłać
| Node.js / Express | res.status(204).end() |
|---|---|
| Python / Flask | return '', 204 |
| nginx | return 204; |
Jak go sprawdzić
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/