Sobes.tech
Junior

Кодҳои ҷавоби HTTP чӣ мебошанд ва онҳо дар чӣ фарқ мекунанд?

sobes.tech AI

Ҷавоб аз AI

HTTP жооп коду — бул кардардын суроосуна жооп катары сервер тарабынан кайтарылган үч белгиден турган сандар. Алар суроонун иштетилишинин абалын көрсөтөт жана ал ийгиликтүү аяктадыбы, ката кеттиби же кошумча аракет талап кылынганын билдирет.

Коддор беш класска бөлүнөт:

  • 1xx (Маалымат берүүчү): Суроо кабыл алынды, иштетүү уланууда.
  • 2xx (Ийгиликтүү): Суроо ийгиликтүү кабыл алынды, түшүндүрүлдү жана иштетилди.
  • 3xx (Жөнөтүүлөр): Кардар суроону аяктоо үчүн кошумча аракеттерди жасашы керек.
  • 4xx (Кардар ката): Суроо синтаксистик ката камтыйт же иштетилбейт.
  • 5xx (Сервер ката): Сервер суроону аткара алган жок.

Коддордун айырмачылыгы алардын семантикасына байланыштуу, ал суроонун ар кандай этаптарында жана мүмкүн болгон жыйынтыктарда колдонулат.

Көп колдонулган коддордун мисалдары:

Код Түшүндүрмө Класс
200 ОК Ийгиликтүү
201 Жасалды Ийгиликтүү
301 Узакка калтырылган Жөнөтүүлөр
302 Табылды Жөнөтүүлөр
400 Ката суроо Кардар ката
401 Авторизация жок Кардар ката
403 Тыюу салынган Кардар ката
404 Табылган жок Кардар ката
500 Ички сервер ката Сервер ката
503 Кызмат жеткиликтүү эмес Сервер ката
// JavaScriptте HTTP жоопту иштетүү мисалы
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);
  });