Junior
Opowiedz o kodach statusu HTTP.
sobes.tech AI
Odpowiedź od AI
Kody statusów HTTP to trzycyfrowe liczby całkowite zwracane przez serwer jako odpowiedź na żądanie klienta. Wskazują one wynik żądania i dzielą się na pięć klas:
- 1xx Informacyjne: Żądanie zostało odebrane i jest kontynuowane przetwarzanie.
100 Continue: Serwer otrzymał początkową część żądania, a klient może kontynuować wysyłanie reszty.101 Switching Protocols: Serwer rozumie i jest gotowy do wykonania zmiany protokołów żądanej przez klienta.
- 2xx Sukces: Żądanie zostało pomyślnie przetworzone, zrozumiane i zaakceptowane.
200 OK: Standardowa odpowiedź sukcesu dla żądań HTTP.201 Created: Żądanie zostało wykonane, a nowy zasób został utworzony.204 No Content: Serwer pomyślnie przetworzył żądanie, ale w odpowiedzi nie ma treści.
- 3xx Przekierowanie: Aby zakończyć żądanie, wymagane są dodatkowe działania.
301 Moved Permanently: Żądany zasób ma nowy stały URI.302 Found: Żądany zasób tymczasowo przeniesiony do innego URI.304 Not Modified: Zasób nie zmienił się od ostatniego wysłania.
- 4xx Błędy klienta: Żądanie zawiera błąd składni lub nie może zostać wykonane.
400 Bad Request: Serwer nie mógł zrozumieć żądania z powodu nieprawidłowej składni.401 Unauthorized: Wymagana jest autoryzacja do dostępu do zasobu.403 Forbidden: Serwer rozumie żądanie, ale odmawia autoryzacji.404 Not Found: Serwer nie może znaleźć żądanego zasobu.
- 5xx Błędy serwera: Serwer nie mógł poprawnie obsłużyć poprawnie sformułowanego żądania.
500 Internal Server Error: Ogólny błąd serwera występujący podczas przetwarzania.502 Bad Gateway: Serwer działający jako brama lub proxy otrzymał nieprawidłową odpowiedź od serwera nadrzędnego.503 Service Unavailable: Serwer w tym momencie nie może obsłużyć żądania z powodu tymczasowego przeciążenia lub konserwacji.
Przykłady użycia w testach:
- Testowanie API: Sprawdzanie zgodności zwracanych kodów statusu z oczekiwanymi (np.
200 OKprzy pomyślnym pobieraniu danych,404 Not Foundprzy nieistniejącym zasobie). - Testowanie aplikacji internetowych: Sprawdzanie przekierowań (kody statusu
3xx), błędów wprowadzania użytkownika (kody statusu4xx), poprawności działania usług pod obciążeniem (kod statusu503).
Przykład sprawdzania kodu statusu w Pythonie z użyciem requests:
import requests
url = "https://www.example.com"
response = requests.get(url)
# Sprawdzamy, czy żądanie się powiodło (kod statusu 2xx)
if response.status_code == 200:
print("Żądanie powiodło się.")
else:
print(f"Błąd podczas żądania. Kod statusu: {response.status_code}")