Junior
Čo sú to kódy odpovede HTTP a v čom sa od seba líšia?
sobes.tech AI
Odpoveď od AI
Kódy odpovede HTTP sú trojciferné čísla, ktoré server vráti ako odpoveď na požiadavku klienta. Ukazujú stav spracovania požiadavky a poskytujú informácie o tom, či bola úspešne dokončená, či došlo k chybe alebo či je potrebná ďalšia akcia.
Kódy sú rozdelené do piatich tried:
- 1xx (Informačné): Žiadosť bola prijatá, spracovanie pokračuje.
- 2xx (Úspešné): Žiadosť bola úspešne prijatá, pochopená a spracovaná.
- 3xx (Presmerovania): Klient musí vykonať ďalšie kroky na dokončenie žiadosti.
- 4xx (Chyby klienta): Žiadosť obsahuje syntaktickú chybu alebo nemôže byť spracovaná.
- 5xx (Chyby servera): Server nemohol žiadosť vykonať.
Rozdiely medzi kódmi spočívajú v ich sémantike, ktorá sa týka rôznych fáz spracovania žiadosti a možných výsledkov.
Príklady bežne používaných kódov:
| Kód | Popis | Trieda |
|---|---|---|
| 200 | OK | Úspešné |
| 201 | Vytvorené | Úspešné |
| 301 | Trvalo presunuté | Presmerovania |
| 302 | Nájdené | Presmerovania |
| 400 | Nesprávny požiadavok | Chyby klienta |
| 401 | Neautorizované | Chyby klienta |
| 403 | Zakázané | Chyby klienta |
| 404 | Nenašlo sa | Chyby klienta |
| 500 | Interná chyba servera | Chyby servera |
| 503 | Služba nedostupná | Chyby servera |
// Príklad spracovania HTTP odpovede v JavaScripte
fetch('/api/data')
.then(response => {
if (response.ok) { // Kontrola úspešného stavu (2xx)
return response.json();
} else {
// Spracovanie chýb na základe kódu stavu
console.error(`HTTP chyba: ${response.status}`);
if (response.status === 404) {
console.error('Zdroj nenájdený.');
}
throw new Error(`HTTP chyba: ${response.status}`);
}
})
.then(data => {
console.log('Prijaté údaje:', data);
})
.catch(error => {
console.error('Chyba pri načítavaní údajov:', error);
});