Sobes.tech
Junior

Mis on HTTP vastuskoodid ja kuidas nad üksteisest erinevad?

sobes.tech AI

Vastus AI-lt

HTTP vastusekoodid — need on kolme numbrit, mille server tagastab vastusena kliendi päringule. Nad näitavad päringu töötlemise staatust ning annavad teavet selle kohta, kas see õnnestus, kas tekkis viga või on vaja täiendavat tegevust.

Koodid jagunevad viide klassi:

  • 1xx (Informatiivsed): Päring on vastu võetud, töötlemine jätkub.
  • 2xx (Õnnestunud): Päring on edukalt saadud, mõistetud ja töödeldud.
  • 3xx (suunamised): Klient peab tegema täiendavaid samme päringu lõpetamiseks.
  • 4xx (Kliendi vead): Päring sisaldab süntaksiviga või seda ei saa täita.
  • 5xx (Serveri vead): Server ei suutnud päringut täita.

Koodide erinevused on nende semantikas, mis on seotud erinevate päringutöötluse etappidega ja võimalikud tulemustega.

Sageli kasutatavad koodinäited:

Kood Kirjeldus Klass
200 Okei Õnnestunud
201 Loobud Õnnestunud
301 Püsiv ümbersuunamine Suunamised
302 Leitud Suunamised
400 Vale päring Kliendi vead
401 Pole autoriseeritud Kliendi vead
403 Keelatud Kliendi vead
404 Ei leitud Kliendi vead
500 Sise serveri viga Serveri vead
503 Teenus pole saadaval Serveri vead
// HTTP vastuse töötlemise näide JavaScriptis
fetch('/api/data')
  .then(response => {
    if (response.ok) { // Eduka staatuse (2xx) kontroll
      return response.json();
    } else {
      // Vea töötlemine vastusstaatuskoodi põhjal
      console.error(`HTTP viga: ${response.status}`);
      if (response.status === 404) {
        console.error('Resurssi ei leitud.');
      }
      throw new Error(`HTTP viga: ${response.status}`);
    }
  })
  .then(data => {
    console.log('Saadud andmed:', data);
  })
  .catch(error => {
    console.error('Andmete laadimisel tekkis viga:', error);
  });