Junior
Pastāstiet par HTTP statusa kodēm.
sobes.tech AI
Atbilde no AI
HTTP statusa kodi ir — tie ir trīs ciparu skaitļi, ko serveris atgriež kā atbildi uz klienta pieprasījumu. Tie norāda pieprasījuma rezultātu un sniedz informāciju par to, kā klientam jāapstrādā atbilde:
Statusa kodi tiek iedalīti piecos klases:
- 1xx — Informatīvie: Pieprasījums ir pieņemts, turpinās apstrāde.
- 2xx — Veiksmīgi: Pieprasījums ir veiksmīgi apstrādāts.
- 3xx — Pāradresācija: Lai pabeigtu pieprasījumu, ir nepieciešamas papildu darbības.
- 4xx — Klienta kļūda: Pieprasījumā ir sintakses kļūda vai to nav iespējams izpildīt.
- 5xx — Servera kļūda: Serveris nav spējīgs izpildīt pareizu pieprasījumu.
Daži biežākie statusa kodi:
| Kods | Apraksts | Klase |
|---|---|---|
| 200 | OK | Veiksmīgi |
| 201 | Created | Veiksmīgi |
| 204 | No Content | Veiksmīgi |
| 301 | Moved Permanently | Pāradresācija |
| 302 | Found | Pāradresācija |
| 400 | Bad Request | Klienta kļūda |
| 401 | Unauthorized | Klienta kļūda |
| 403 | Forbidden | Klienta kļūda |
| 404 | Not Found | Klienta kļūda |
| 500 | Internal Server Error | Servera kļūda |
| 503 | Service Unavailable | Servera kļūda |
API testēšanas laikā ir svarīgi pārbaudīt pareizos statusa kodus dažādiem pieprasījumiem (veiksmīgiem, ar validācijas kļūdām, ar nepareiziem datiem utt.), lai pārliecinātos par sistēmas paredzamo uzvedību.
Piemēram, ja tiek izveidots resurss, sagaidāms 201, veiksmīgi saņemti dati — 200, neesoša resursa pieprasījums — 404, servera kļūda — 500.
Statusa koda pārbaudes piemērs automaģistrācijā (Python ar requests bibliotēku):
import requests
url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)
# Pārbaude, vai pieprasījums atgrieza 200 OK statusu
assert response.status_code == 200