Co znaczą poszczególne kody odpowiedzi HTTP i jak wpływają na korzystanie ze strony? - Codium | Software House

Co znaczą poszczególne kody odpowiedzi HTTP i jak wpływają na korzystanie ze strony?

Strony internetowe Wszystkie
23/05/2023
4 min

Odpowiednie wykorzystanie kodów odpowiedzi HTTP ma spore znaczenie dla funkcjonalności strony. Szczególnie warto zwrócić uwagę na komunikaty o błędach, które zawierają ważne informacje zarówno dla użytkowników, jak i administratorów. Jak podejść do tego tematu, by zapewnić dobry efekt w kwestii UX?

Czym są kody odpowiedzi HTTP?

Protokół HTTP, który w dużej mierze odpowiada za działanie internetu, opiera się na komunikacji pomiędzy różnymi stronami, serwerami, użytkownikami czy aplikacjami z wykorzystaniem ściśle określonego formatu zapytań i odpowiedzi. Aby ułatwić odczytywanie informacji przez oprogramowanie, stosuje się trzycyfrowe oznaczenia z informacją o wyniku zapytania – to właśnie kody odpowiedzi HTTP. W teorii serwer może zdefiniować dowolne kody, jednak najczęściej stosuje się standardowy zestaw podzielony na pięć kategorii:

  • odpowiedzi informacyjne (HTTP 100–199)– potwierdzają otrzymanie zapytania i kontynuację przetwarzania;
  • kody powodzenia (HTTP 200–299)– pomyślne przyjęcie zapytania, przeważnie wraz z odpowiedzią w postaci żądanego pliku lub innego zasobu;
  • przekierowania (HTTP 300–399)– wykorzystywane wtedy, gdy zasoby znajdują się w innym miejscu niż adres z zapytania;
  • błędy klienta (HTTP 400–499)– obejmują problemy z zapytaniem (np. z jego składnią), które uniemożliwiają realizację;
  • błędy serwera (HTTP 500-599)– informują o problemach po stronie serwera mimo poprawnie wprowadzonego zapytania.

 

Choć liczba kodów możliwych do wykorzystania jest dość duża, oficjalny rejestr obejmuje tylko kilkadziesiąt zdefiniowanych odpowiedzi. Większość z nich jest używana dość rzadko – administratorzy stron zwykle skupiają się na kilku lub kilkunastu kodach przeznaczonych dla typowych sytuacji i najczęstszych błędów.

 

 

Informacyjne kody HTTP (1xx)

W tym przypadku przygotowanie odpowiedniej odpowiedzi dla użytkowników nie wymaga dodatkowej pracy na stronie. To kody stosowane jedynie do kontynuacji zapytań – niemal zawsze za wszelkie kwestie związane z przetwarzaniem odpowiedzialny będzie sam serwer. Są one najczęściej wykorzystywane do podziału zapytania na różne części, np. nagłówki i zawartość, by uniknąć długiego czasu przetwarzania w razie wystąpienia błędów.

 

Kody powodzenia (2xx)

Co ciekawe, mimo że większość użytkowników nie ma bezpośredniej styczności z kodami 2xx, na sprawnie działającej stronie będą one wykorzystywane właściwie przy większości odpowiedzi. Są one przeznaczone do stosowania przy pomyślnym wypełnieniu zapytania – np. do wyświetlenia zawartości strony. Oto kilka kodów z tej grupy, które warto znać:

  • 200 OK – ogólny, uniwersalny status zwracany jako poprawna odpowiedź serwera;
  • 201 Created – kod oznaczający utworzenie zasobu, stosowany np. przy dodaniu nowego wpisu do bazy;
  • 202 Accepted – informuje o przyjęciu zapytania w sytuacji, gdy jego przetwarzanie jeszcze się nie skończyło;
  • 204 No Content – zapytanie zostało zrealizowane, ale serwer nie ma żadnej treści do zwrotu, np. przy usuwaniu zasobów.

Również w tym przypadku dodatkowa praca przeważnie będzie zbędna. Warto jednak mieć na uwadze, że kod 200 powinien zawsze oznaczać poprawne wyświetlenie strony lub pliku.

 

Przekierowania – kody 3xx

To grupa kodów, która ma spore znaczenie nie tylko dla funkcjonowania strony internetowej, lecz także dla pozycjonowania. Odpowiedzi z zakresu 300–399 (a właściwie 300–310, ponieważ pozostałe nie mają standardowej definicji) oznaczają, że zasoby potrzebne do wypełnienia zapytania są dostępne, jednak znajdują się w innym miejscu na serwerze. Może mieć to miejsce m.in. wtedy, gdy zmieniamy strukturę adresów URL na stronie. Co ważne, istnieje rozróżnienie pomiędzy stałym a tymczasowym przekierowaniem:

  • 301 Moved Permanently – stałe przekierowanie, używane wtedy, gdy dany zasób (np. podstrona) ma być wyszukiwany pod nowym adresem;
  • 302 Found – przekierowanie tymczasowe; zapytania w przyszłości powinny być kierowane na pierwotny URL.

Z reguły kody 301 są bardziej przyjazne SEO, jednak z perspektywy użytkownika obie z powyższych odpowiedzi będą mieć podobne znaczenie. W obydwóch przypadkach efektem będzie przekierowanie na nową wersję strony. Należy zaznaczyć, że w większości sytuacji zaleca się minimalizowanie wykorzystania kodów 3xx – mogą one negatywnie wpływać m.in. na indeksowanie witryny oraz pozycjonowanie.

Kody 4xx, czyli błędy po stronie klienta

To odpowiedzi, z którymi możemy spotkać się stosunkowo często – zwłaszcza w przypadku błędu 404 oznaczającego brak żądanej zawartości. Oprócz tego warto wyróżnić kilka innych typowych problemów:

  • 400 Bad Request – nieprawidłowe zapytanie, przeważnie z powodu niepoprawnej składni (np. nieobsługiwane znaki w treści);
  • 401 Unauthorized – nieautoryzowany dostęp (np. dla zasobów, które wymagają logowania);
  • 403 Forbidden – zasoby nie mogą zostać zwrócone ze względów bezpieczeństwa;
  • 429 Too Many Requests – wykorzystywany wtedy, gdy serwer otrzyma w krótkim czasie zbyt wiele zapytań.

 

Jak obsłużyć tego typu błędy, by zapewnić komfortowe korzystanie ze strony nawet w razie problemów z zapytaniami? Przede wszystkim warto zwrócić uwagę na odpowiednie zaprezentowanie użytkownikowi informacji o błędzie. Dobrym sposobem będzie przygotowanie podstron na konkretne odpowiedzi, w szczególności dla kodu 404. Sam kod HTTP nie musi koniecznie znajdować się w zawartości. Zamiast niego często bardziej zrozumiały będzie krótki opis problemu – może on jednak iść w parze z kodem, by ułatwić zgłaszanie i diagnozowanie błędów.

 

Kolejną ważną kwestią przy błędach klienta jest umożliwienie powrotu do wcześniej wykonywanych czynności. Oznacza to, że podstrona prezentująca błąd nie powinna być „ślepą uliczką” – powinny się na niej znaleźć m.in. linki prowadzące do poprzedniej sekcji witryny lub do strony głównej. W przypadku gdy błąd wynika z braku zasobów (m.in. wtedy, gdy sklep internetowy nie ma produktu pod danym adresem URL), warto dołączyć do podstrony wyszukiwarkę, która pozwoli na sprawną kontynuację korzystania ze strony.

 

Błędy serwera – kody 5xx

Najczęściej wykorzystywane kody w tej grupie to 500 Internal Server Error (wewnętrzny błąd serwera) i 503 Service Unavailable (usługa niedostępna – stosowany m.in. przy przeciążeniu serwera). Tego typu odpowiedzi wiążą się przeważnie z tymczasowym brakiem możliwości korzystania ze strony. Z tego względu nie będzie potrzebne stosowanie linków czy udostępnianie wyszukiwarki. Zamiast tego należy skupić się na przygotowaniu podstrony z jasną prezentacją błędu. Dobrym pomysłem może być także zamieszczenie informacji kontaktowych, które pozwolą użytkownikom zorientować się, kiedy strona będzie dostępna ponownie.

FAQ

Najczęściej zadawane pytania

Co to są kody odpowiedzi HTTP i dlaczego są ważne dla mojej strony?

Kody odpowiedzi HTTP to trzycyfrowe numery wysyłane przez serwer do przeglądarki użytkownika w celu poinformowania o stanie zapytania. Są one kluczowe dla działania internetu, pomagając w diagnozowaniu problemów, zarządzaniu ruchem na stronie, a także w optymalizacji pod kątem SEO i poprawie UX.

Jak kody odpowiedzi HTTP wpływają na doświadczenie użytkownika (UX)?

Poprawne wykorzystanie kodów odpowiedzi HTTP pozwala na efektywne informowanie użytkowników o stanie ich zapytań, np. czy strona została pomyślnie załadowana, czy nastąpiło przekierowanie, czy wystąpił błąd. Dzięki temu można lepiej zarządzać oczekiwaniami użytkowników i zapewnić im płynne przejście przez różne sekcje witryny.

Jakie są najważniejsze kody odpowiedzi HTTP, na które powinienem zwrócić uwagę?

Do najważniejszych kodów należą: 200 (OK) dla pomyślnie przetworzonych zapytań, 301 (Moved Permanently) i 302 (Found) dla przekierowań, 404 (Not Found) dla nieznalezionych zasobów oraz 500 (Internal Server Error) i 503 (Service Unavailable) w przypadku błędów serwera. Każdy z nich ma bezpośredni wpływ na użytkownika i SEO strony.

Jak mogę poprawić UX przy użyciu kodów odpowiedzi 404 i 500?

Dla kodu 404 zaleca się przygotowanie spersonalizowanej strony błędu z przyjaznym komunikatem, linkami do innych sekcji witryny lub wyszukiwarką, aby użytkownik mógł łatwo kontynuować nawigację. Dla kodu 500 warto zapewnić informacje o tymczasowych problemach i, jeśli to możliwe, szacowany czas ich rozwiązania, aby użytkownik wiedział, co robić dalej.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Tomasz Juśkiewicz Tomasz Juśkiewicz

Dusza towarzystwa i kreator pozytywnej atmosfery w naszym zespole. Idealny wieczór według Tomka to dobra muzyka i Lego

Kategorie

Popularne wpisy

Odbierz darmowy poradnik
Jak stworzyć konwertujący landing page

Odbierz Ebook'a