Junior
HTTP javob kodlari nima va ular bir-biridan qanday farq qiladi?
sobes.tech AI
AIdan javob
HTTP javob kodlari — bu mijozning so'roviga javoban server tomonidan qaytariladigan uch xonali raqamlardir. Ular so'rovni qayta ishlash holatini ko'rsatadi va muvaffaqiyatli bajarilganligini, xato yuz berganligini yoki qo'shimcha harakat talab qilinishini haqida ma'lumot beradi.
Kodlar besh sinfga bo'lingan:
- 1xx (Ma'lumotlar): So'rov qabul qilindi, ishlash davom etmoqda.
- 2xx (Muvaffaqiyatli): So'rov muvaffaqiyatli qabul qilindi, tushunildi va qayta ishlandi.
- 3xx (Qayta yo'naltirishlar): Mijoz so'rovni yakunlash uchun qo'shimcha harakatlar qilish kerak.
- 4xx (Mijoz xatolari): So'rov sintaksis xatosi yoki bajarilmaydi.
- 5xx (Server xatolari): Server so'rovni bajarolmaydi.
Kodlar ularning semantikasi bilan farqlanadi, bu so'rovni qayta ishlashning turli bosqichlari va mumkin bo'lgan natijalar bilan bog'liq.
Ko'p ishlatiladigan kodlar misollari:
| Kod | Tavsifi | Sinf |
|---|---|---|
| 200 | OK | Muvaffaqiyatli |
| 201 | Yaratilgan | Muvaffaqiyatli |
| 301 | Doimiy ravishda ko'chirilgan | Qayta yo'naltirishlar |
| 302 | Topildi | Qayta yo'naltirishlar |
| 400 | Yomon so'rov | Mijoz xatolari |
| 401 | Ruxsat berilmagan | Mijoz xatolari |
| 403 | Ta'qiqlangan | Mijoz xatolari |
| 404 | Topilmadi | Mijoz xatolari |
| 500 | Ichki server xatosi | Server xatolari |
| 503 | Xizmat mavjud emas | Server xatolari |
// JavaScriptda HTTP javobini qayta ishlash misoli
fetch('/api/data')
.then(response => {
if (response.ok) { // Muvaffaqiyatli holatni tekshirish (2xx)
return response.json();
} else {
// Status kodiga asoslangan xatolarni qayta ishlash
console.error(`HTTP xatosi: ${response.status}`);
if (response.status === 404) {
console.error('Resurs topilmadi.');
}
throw new Error(`HTTP xatosi: ${response.status}`);
}
})
.then(data => {
console.log('Olingan ma'lumotlar:', data);
})
.catch(error => {
console.error('Ma'lumotlarni yuklashda xato:', error);
});