Sobes.tech
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);
  });