HTTP metody vyjadřují váš záměr s resource; status codes jsou zakódovaná odpověď serveru. U metod záleží na dvou vlastnostech: safe (jen pro čtení, bez vedlejších efektů) a idempotent (opakování dá stejný výsledek — důležité pro bezpečné retry).
HTTP metody vyjadřují váš záměr s resource; status codes jsou zakódovaná odpověď serveru. U metod záleží na dvou vlastnostech: safe (jen pro čtení, bez vedlejších efektů) a idempotent (opakování dá stejný výsledek — důležité pro bezpečné retry).
| Metoda | Účel | Safe | Idempotent |
|---|
| GET | Čtení resource | Yes | Yes |
| POST | Vytvoření / spuštění akce | No | No |
| PUT | Nahrazení resource | No | Yes |
| PATCH | Částečná aktualizace | No | No* |
| DELETE | Odstranění resource | No | Yes |
| HEAD | Jako GET, jen hlavičky | Yes | Yes |
Rozdíl v idempotenci je praktický: protože PUT a DELETE jsou idempotentní, klient je může po timeoutu bezpečně zopakovat; opakování neidempotentního POST riskuje vytvoření duplikátu (klasická chyba dvojitého naúčtování).
Status codes se seskupují podle první číslice:
1xx Informational request received, continuing (100 Continue, 101 Switching)
2xx Success it worked (200 OK, 201 Created, 204 No Content)
3xx Redirection go elsewhere (301 Moved, 304 Not Modified)
4xx Client error YOUR request is wrong (400, 401, 403, 404, 429)
5xx Server error the SERVER failed (500, 502, 503, 504)
Nejdůležitější je hranice 4xx vs 5xx: 4xx znamená, že klient poslal něco špatně (chybný vstup, neautentizován, nenalezeno) — opakování beze změny nepomůže; 5xx znamená, že selhal server — opakování (s backoffem) může uspět. Ty každodenní znejte nazpaměť: 401 (neautentizován) vs 403 (autentizován, ale nemá povoleno), 404 (nenalezeno), 429 (omezení frekvence), 500 (obecný pád serveru), 502/503/504 (bad gateway / nedostupné / gateway timeout — obvykle problém upstreamu nebo přetížení).
Tyto kódy jsou sdílená smlouva mezi každým klientem a serverem, takže plynulost v nich se očekává od každého, kdo staví nebo konzumuje API. Tazatelé zkoumají rozdíly, které odhalí skutečné pochopení: 401 vs 403, PUT vs PATCH a zejména idempotenci, která přímo určuje, zda jsou retry bezpečné — klíčový problém v distribuovaných systémech a platebních tocích. Vracení správného status code také činí vaše API předvídatelné a správně zpracované cachemi, proxy a klientskými knihovnami, takže tato znalost formuje dobrý návrh API, ne jen banality.
Knihovna IT otázek k pohovoru s podrobnými odpověďmi — od Junior po Senior.
Přispět