Porozprávajte o kódoch stavu HTTP.
sobes.tech AI
Odpoveď od AI
Kódy stavu HTTP sú trojmiestne čísla, ktoré server vracia ako odpoveď na požiadavku klienta. Ukazujú výsledok požiadavky a poskytujú informácie o tom, ako by mal klient spracovať odpoveď.
Kódy stavu sú rozdelené do piatich tried:
- 1xx — Informačné: Požiadavka bola prijatá, spracovanie pokračuje.
- 2xx — Úspešné: Požiadavka bola úspešne spracovaná.
- 3xx — Presmerovanie: Sú potrebné ďalšie kroky na dokončenie požiadavky.
- 4xx — Chyba klienta: Požiadavka obsahuje syntaktickú chybu alebo nemôže byť vykonaná.
- 5xx — Chyba servera: Server nemohol správne vykonať požiadavku.
Niektoré z najčastejšie sa vyskytujúcich kódov stavu:
| Kód | Popis | Trieda |
|---|---|---|
| 200 | OK | Úspešné |
| 201 | Vytvorené | Úspešné |
| 204 | Žiadny obsah | Úspešné |
| 301 | Trvalé presmerovanie | Presmerovanie |
| 302 | Nájdete | Presmerovanie |
| 400 | Nesprávna požiadavka | Chyba klienta |
| 401 | Neautorizované | Chyba klienta |
| 403 | Zakázané | Chyba klienta |
| 404 | Nenašlo sa | Chyba klienta |
| 500 | Interná chyba servera | Chyba servera |
| 503 | Služba nedostupná | Chyba servera |
Počas testovania API je dôležité overiť, či sa správne kódy stavu vracajú ako odpoveď na rôzne požiadavky (úspešné, s chybami validácie, s nesprávnymi údajmi atď.), aby sa zabezpečilo predvídateľné správanie systému.
Napríklad, pri vytváraní zdroja sa očakáva 201, pri úspešnom získaní údajov 200, pri požiadavke na neexistujúci zdroj 404 a pri chybe na serveri 500.
Príklad kontroly kódu stavu v automatickom teste (v Pythone s použitím requests):
import requests
url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)
# Kontrola, že požiadavka vrátila stav 200 OK
assert response.status_code == 200