Junior
Mi az a HTTP-válaszkódok és miben különböznek egymástól?
sobes.tech MI
Válasz az MI-től
HTTP-válaszkódok háromjegyű számok, amelyeket a szerver ad vissza a kliens kérésére adott válaszként. Ezek jelzik a kérés feldolgozásának állapotát, és információt nyújtanak arról, hogy sikeresen befejeződött-e, hiba történt-e, vagy további lépések szükségesek.
A kódokat öt osztályba sorolják:
- 1xx (Információs): A kérés elfogadásra került, a feldolgozás folyamatban van.
- 2xx (Sikeres): A kérés sikeresen megérkezett, értelmezve és feldolgozva lett.
- 3xx (Átirányítások): A kliensnek további lépéseket kell tennie a kérés befejezéséhez.
- 4xx (Kliens hibák): A kérés szintaktikai hibát tartalmaz, vagy nem feldolgozható.
- 5xx (Szerver hibák): A szerver nem tudta végrehajtani a kérést.
A kódok közötti különbségek azok szemantikájában rejlenek, amelyek a kérés feldolgozásának különböző szakaszaira és lehetséges eredményeire utalnak.
Gyakran használt példák:
| Kód | Leírás | Osztály |
|---|---|---|
| 200 | OK | Sikeres |
| 201 | Létrehozva | Sikeres |
| 301 | Állandóan átmozgatva | Átirányítások |
| 302 | Megtalálva | Átirányítások |
| 400 | Hibás kérés | Kliens hibák |
| 401 | Jogosulatlan | Kliens hibák |
| 403 | Tiltott | Kliens hibák |
| 404 | Nem található | Kliens hibák |
| 500 | Belső szerverhiba | Szerver hibák |
| 503 | Szolgáltatás nem elérhető | Szerver hibák |
// Példa HTTP-válasz feldolgozására JavaScriptben
fetch('/api/data')
.then(response => {
if (response.ok) { // Sikeres státusz ellenőrzése (2xx)
return response.json();
} else {
// Hibakezelés státuszkód alapján
console.error(`HTTP-hiba: ${response.status}`);
if (response.status === 404) {
console.error('Az erőforrás nem található.');
}
throw new Error(`HTTP-hiba: ${response.status}`);
}
})
.then(data => {
console.log('Kapott adatok:', data);
})
.catch(error => {
console.error('Hiba az adatok betöltése során:', error);
});