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}")