Sobes.tech
Junior

HTTP статустук коддору жөнүндө сөз кылыңыз.

sobes.tech AI

AIден жооп

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

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

Эң кеңири тараган коддордун мисалдары:

Код Категория Баасы Түшүндүрмө
100 Маалымат Улантуу Сервер суроонун баштапкы бөлүгүн алды
200 Ийгилик ОК Суроо ийгиликтүү аткарылды
201 Ийгилик Жасалды Суроо аткарылды, жаңы ресурс түзүлдү
204 Ийгилик Мазмун жок Суроо аткарылды, жооп эч кандай дене камтыбайт
301 Жөнөтүү Узакка көчүрүлдү Ресурс түпкүлүктүү көчүрүлдү
302 Жөнөтүү Уакыттык көчүрүлдү Ресурс убактылуу көчүрүлдү
304 Жөнөтүү Өзгөртүүсүз Ресурс акыркы суроодон бери өзгөргөн жок
400 Клиент катасы Ката суроо Синтаксис ката суроо
401 Клиент катасы Ийгиликсиз Аутентификация талап кылынат
403 Клиент катасы Тыюу салынган Ресурска жетүү тыюу салынган
404 Клиент катасы Табылган жок URL көрсөтүлгөн ресурс табылган жок
405 Клиент катасы Модул колдонууга уруксат берилбейт HTTP ыкмасы колдонулбайт
500 Сервер катасы Ички сервер катасы Ички каталар
502 Сервер катасы Жаман шлюз Жогорку серверден жооп туура эмес
503 Сервер катасы Кызмат жеткиликтүү эмес Сервер убактылуу жеткиликтүү эмес

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

import requests

url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)

# Статус код ийгиликтүү экенин текшерүү (200 OK)
if response.status_code == 200:
    print("GET суроо ийгиликтүү")
else:
    print(f"GET суроосунда ката: статус коды {response.status_code}")

url_not_found = "https://jsonplaceholder.typicode.com/nonexistent"
response_not_found = requests.get(url_not_found)

# Статус коду ресурстун табылбаганын көрсөтөбү (404 Not Found)
if response_not_found.status_code == 404:
    print("Ресурс табылган жок (күтүлгөн жүрүм-турум)")
else:
    print(f"Күтүлбөгөн статус коды: {response_not_found.status_code}")