Sobes.tech
Junior

HTTP cavab kodları nədir və onların bir-birindən fərqi nədir?

sobes.tech Süni İntellekt

AI-dan cavab

HTTP cavab kodları, müştərinin sorğusuna cavab olaraq server tərəfindən qaytarılan üçrəqəmli ədədlərdir. Onlar sorğunun emal statusunu göstərir və onun uğurla tamamlanıb-tamamlanmadığını, səhv baş verdiyini və ya əlavə hərəkət tələb olunduğunu bildirir.

Kodlar beş sinfə bölünür:

  • 1xx (Məlumatlandırıcı): Sorğu qəbul edildi, emal davam edir.
  • 2xx (Uğurlu): Sorğu uğurla qəbul edildi, başa düşüldü və işlənildi.
  • 3xx (Yönləndirmələr): Müştərinin sorğunu tamamlaması üçün əlavə hərəkətlər etməsi lazımdır.
  • 4xx (Müştəri səhvləri): Sorğu sintaksis xətası ehtiva edir və ya işlənə bilməz.
  • 5xx (Server səhvləri): Server sorğunu yerinə yetirə bilmədi.

Kodlar onların semantikası ilə fərqlənir, bu, sorğunun müxtəlif mərhələlərində və mümkün nəticələrdə əlaqəlidir.

Çox istifadə olunan kod nümunələri:

Kod Təsviri Sinif
200 OK Uğurlu
201 Yaradıldı Uğurlu
301 Daimi olaraq köçürülüb Yönləndirmələr
302 Tapıldı Yönləndirmələr
400 Yaxşı olmayan sorğu Müştəri səhvləri
401 İcazəsiz Müştəri səhvləri
403 Qadağan edildi Müştəri səhvləri
404 Tapılmadı Müştəri səhvləri
500 Daxili server xətası Server səhvləri
503 Xidmət mövcud deyil Server səhvləri
// JavaScript-də HTTP cavabını emal nümunəsi
fetch('/api/data')
  .then(response => {
    if (response.ok) { // Uğurlu status yoxlaması (2xx)
      return response.json();
    } else {
      // Status koduna əsasən səhv emalı
      console.error(`HTTP xətası: ${response.status}`);
      if (response.status === 404) {
        console.error('Resurs tapılmadı.');
      }
      throw new Error(`HTTP xətası: ${response.status}`);
    }
  })
  .then(data => {
    console.log('Alınan məlumatlar:', data);
  })
  .catch(error => {
    console.error('Məlumatların yüklənməsində xəta:', error);
  });