Co to znaczy
Serwer odrzuca żądanie, bo typ danych treści (Content-Type) lub kodowanie nie są obsługiwane.
Typowe przyczyny
- Wysyłanie JSON bez Content-Type: application/json
- Treść formularza wysłana do API przyjmującego tylko JSON
- Nieobsługiwane Content-Encoding, np. brotli przy przesyłaniu
Jak naprawić
Jako klient lub odwiedzający
Ustaw właściwy nagłówek Content-Type dla wysyłanej treści i trzymaj się formatu opisanego w API.
Jako właściciel strony lub API
Wymień akceptowane typy w Accept-Post lub Accept-Patch i podaj jasny komunikat.
Przykładowa odpowiedź
HTTP/1.1
HTTP/1.1 415 Unsupported Media Type
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Accept-Post: application/json
Content-Type: application/problem+json
{
"type": "about:blank",
"title": "Unsupported Media Type",
"status": 415,
"detail": "Send the body as application/json."
} Specyfikacja
FAQ
› Dlaczego fetch() dostaje 415 z treścią JSON?
fetch wysyła text/plain dla treści tekstowych, chyba że ustawisz headers: {'Content-Type': 'application/json'}.
› 415 czy 400?
415 to konkretnie zły typ treści; 400 to ogólnie źle sformułowane żądanie.