Sobes.tech
Junior

HTTP жауап кодтары дегеніміз не және олар бір-бірінен қалай ерекшеленеді?

sobes.tech AI

AI-дан жауап

HTTP-жауап кодтары — бұл клиенттің сұранысына жауап ретінде сервер қайтарған үш таңбалы сандар. Олар сұраныстың өңделу мәртебесін көрсетеді және оның сәтті орындалғанын, қате болғанын немесе қосымша әрекетті қажет ететінін туралы ақпарат береді.

Кодтар бес классқа бөлінеді:

  • 1xx (Ақпараттық): Сұраныс қабылданды, өңдеу жалғасуда.
  • 2xx (Жетістікті): Сұраныс сәтті қабылданды, түсінілді және өңделді.
  • 3xx (Қайта бағыттау): Клиентке сұранысты аяқтау үшін қосымша әрекеттер жасау қажет.
  • 4xx (Клиент қатесі): Сұраныс синтаксистік қате немесе орындалмайды.
  • 5xx (Сервер қатесі): Сервер сұранысты орындауда сәтсіздікке ұшырады.

Кодтар арасындағы айырмашылық олардың семантикасына байланысты, ол сұраныстың өңделу кезеңдері мен мүмкін нәтижелеріне қатысты.

Жиі қолданылатын кодтардың мысалдары:

Код Сипаттама Класс
200 OK Жетістікті
201 Жасалды Жетістікті
301 Мәңгілік орын ауыстырылды Қайта бағыттау
302 Табылды Қайта бағыттау
400 Қате сұраныс Клиент қатесі
401 Рұқсат жоқ Клиент қатесі
403 Тыйым салынған Клиент қатесі
404 Табылмады Клиент қатесі
500 Ішкі сервер қатесі Сервер қатесі
503 Қызмет қол жетімсіз Сервер қатесі
// HTTP-жауапты JavaScript-те өңдеу мысалы
fetch('/api/data')
  .then(response => {
    if (response.ok) { // Жетістікті статусын тексеру (2xx)
      return response.json();
    } else {
      // Статус коды негізінде қателерді өңдеу
      console.error(`HTTP қатесі: ${response.status}`);
      if (response.status === 404) {
        console.error('Ресурс табылмады.');
      }
      throw new Error(`HTTP қатесі: ${response.status}`);
    }
  })
  .then(data => {
    console.log('Алынған деректер:', data);
  })
  .catch(error => {
    console.error('Деректерді жүктеу қатесі:', error);
  });