Metoda GET

Damian Stelmach

GET służy do żądania od serwera danej strony WWW. Jego nagłówek wygląda mniej więcej tak:

GET /tomijerry.html HTTP/1.1

Zawiera oprócz nazwy żądanego zasobu, również stosowaną wersję protokołu. Gdy serwer taką wiadomość, takie żądanie odbierze, odpowiada klientowi stosownym komunikatem (nagłówek widoczny poniżej) oraz żądanym zasobem:

HTTP/1.1 200 OK /tomijerry.html

W żądaniu GET znajdują się jeszcze takie informacje jak: nazwa hosta (np. wp.pl), nazwa przeglądarki, z jakiej zostało wysłane żądanie, akceptowane przez przeglądarkę typy plików, preferowany język strony czy kodowanie znaków. W odpowiedzi serwera, znajdują się informacje, takie jak: czas serwera, nazwa aplikacji serwera (np. APACHE) czy czas wygaśnięcia dokumentu.

Jeśli z jakiś przyczyn serwer WWW nie może odesłać zasobu, odsyła komunikat błędu, np. 404, który informuje, że żądany zasób nie został znaleziony, lub 403 informujący o zabronionym dostępie do zasobów. Wybrane kody komunikatów i błędów widoczne są w poniższych tabelach.

Kody błędów klienta:

KodOpisZnaczenie
400Bad RequestŻądanie nie może być obsłużone przez serwer z powodu błędu klienta
401UnauthorizedŻądanie zasobu, który wymaga uwierzytelnienia
403ForbiddenSerwer zrozumiał zapytanie lecz konfiguracja bezpieczeństwa zabrania mu zwrócić żądany zasób
404Not FoundSerwer nie odnalazł zasobu według podanego URL
405Method Not AllowedMetoda zawarta w żądaniu nie jest dozwolona dla wskazanego zasobu
406Not AcceptableZażądany zasób nie jest w stanie zwrócić odpowiedzi mogącej być obsłużonej przez klienta
407Proxy Authentication RequiredWymagane uwierzytelnienie do serwera pośredniczącego
408Request TimeoutKoniec czasu oczekiwania na żądanie – klient nie przesłał zapytania do serwera w określonym czasie
409ConflictŻądanie nie może być zrealizowane, ponieważ występuje konflikt z obecnym statusem zasobu
411Length requiredWymagana długość – serwer odmawia zrealizowania zapytania ze względu na brak nagłówka Content-Length w zapytaniu
415Unsupported Media TypeNieznany sposób żądania – serwer odmawia przyjęcia zapytania, ponieważ jego składnia jest niezrozumiała dla serwera

Kody błędów serwera:

KodOpisZnaczenie
500Internal Server ErrorWewnętrzny błąd serwera – serwer napotkał problemy, które uniemożliwiły zrealizowanie żądania
501Not ImplementedSerwer nie dysponuje funkcjonalnością wymaganą w zapytaniu
502Bad GatewayBłąd bramy – serwer – spełniający rolę bramy lub pośrednika – otrzymał niepoprawną odpowiedź od serwera nadrzędnego i nie jest w stanie zrealizować żądania klienta
503Service UnavailableUsługa niedostępna – serwer nie jest w stanie w danej chwili zrealizować zapytania klienta ze względu na przeciążenie
504Gateway TimeoutPrzekroczony czas bramy – serwer – spełniający rolę bramy lub pośrednika – nie otrzymał w ustalonym czasie odpowiedzi od wskazanego serwera HTTP, FTP, LDAP itp. lub serwer DNS jest potrzebny do obsłużenia zapytania
505HTTP Version Not SupportedNieobsługiwana wersja HTTP – serwer nie obsługuje bądź odmawia obsługi wskazanej przez klienta wersji HTTP