Junior
Vorbește despre codurile de stare HTTP.
sobes.tech AI
Răspuns de la AI
Codurile de stare HTTP sunt numere formate din trei cifre, returnate de server ca răspuns la o solicitare a clientului, indicând rezultatul procesării solicitării. Ele sunt clasificate după prima cifră:
- 1xx (Informațional): Solicitarea a fost acceptată, procesarea continuă.
- 2xx (Succes): Solicitarea a fost primită, înțeleasă și acceptată cu succes.
- 3xx (Redirecționare): Sunt necesare acțiuni suplimentare pentru finalizarea solicitării.
- 4xx (Eroare a clientului): Solicitarea conține o eroare de sintaxă sau nu poate fi procesată.
- 5xx (Eroare a serverului): Serverul nu a putut procesa corect solicitarea bine formulată.
Exemple ale celor mai frecvente coduri:
| Cod | Categorie | Valoare | Descriere |
|---|---|---|---|
| 100 | Informațional | Continue | Serverul a primit prima parte a solicitării |
| 200 | Succes | OK | Solicitarea a fost finalizată cu succes |
| 201 | Succes | Created | Solicitarea a fost procesată și a fost creat un nou resurs |
| 204 | Succes | No Content | Solicitarea a fost procesată, răspunsul nu conține corp |
| 301 | Redirecționare | Moved Permanently | Resursa a fost mutată definitiv |
| 302 | Redirecționare | Found (Temporarily Moved) | Resursa a fost mutată temporar |
| 304 | Redirecționare | Not Modified | Resursa nu s-a modificat de la ultima solicitare |
| 400 | Eroare a clientului | Bad Request | Sintaxa solicitării este incorectă |
| 401 | Eroare a clientului | Unauthorized | Autentificarea este necesară |
| 403 | Eroare a clientului | Forbidden | Accesul la resursă este interzis |
| 404 | Eroare a clientului | Not Found | Resursa specificată în URL nu a fost găsită |
| 405 | Eroare a clientului | Method Not Allowed | S-a folosit o metodă HTTP nepermisă |
| 500 | Eroare a serverului | Internal Server Error | Eroare internă a serverului |
| 502 | Eroare a serverului | Bad Gateway | Răspuns invalid de la serverul ascendent |
| 503 | Eroare a serverului | Service Unavailable | Serverul este temporar indisponibil |
Cunoașterea codurilor de stare ajută la înțelegerea cauzei erorii, la depanarea solicitărilor și la determinarea succesului acestora. În automatizarea testelor, sunt adesea folosite pentru verificarea rezultatului așteptat al solicitărilor API.
import requests
url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)
# Verificarea codului de stare pentru succes (200 OK)
if response.status_code == 200:
print("Cerere GET reușită")
else:
print(f"Eroare la cererea GET: cod de stare {response.status_code}")
url_not_found = "https://jsonplaceholder.typicode.com/nonexistent"
response_not_found = requests.get(url_not_found)
# Verificarea codului de stare pentru resursă negăsită (404 Not Found)
if response_not_found.status_code == 404:
print("Resursă negăsită (comportament așteptat)")
else:
print(f"Cod de stare neașteptat primit: {response_not_found.status_code}")