Browsed by
Category: Http dla developerów

Metoda POST

Metoda POST

Ta metoda służy do przesyłania żądań wykonania jakiejś akcji w stosunku do konkretnego zasobu (identyfikowanego przez adres URL). Razem z żądaniem transmitowany jest obiekt w ustalonej reprezentacji. Może ona być zastosowana do: przesyłania szczegółowych danych obiektu do serwera (np. uzupełnionych za pośrednictwem formularza), wysłania do serwera akcji, które mają wpływ na zachowanie danych (np. wysłanie wiadomości na grupę dyskusyjną), stworzenia nowego zasobu określonego przez adres, dodania lub zmiany danych dla zdefiniowanego zasobu. Wynik operacji POST jest sygnalizowany za pomocą statusu,…

Read More Read More

Metoda GET

Metoda GET

Metoda GET jest prawdopodobnie najczęściej używaną metodą w sieci. Służy ona do pobierania zasobu z określonego adresu URL. Może być cache’owana. Zależnie od nagłówków wysłanych razem z zapytaniem, wyróżniamy warunkowe i częściowe zapytania GET, które zachowują się następująco: Warunkowe Rekord lub zasób jest przesyłany tylko, gdy spełniony jest warunek ustawiony za pomocą dowolnego z nagłówków: If-Modified-Since, If-Unmodified-Since, If-Match, If-None-Match lub If-Range. Jest ono użyteczne podczas korzystania z mechanizmu cache. Pozwala zmniejszyć ruch sieciowy wtedy, gdy nie ma potrzeby bezwarunkowego odświeżania…

Read More Read More

Metoda OPTIONS

Metoda OPTIONS

To prośba o przesłanie informacji na temat dostępnych metod komunikacji dla danego zasobu. Możliwe jest także zapytanie o dostępne opcje samego serwera, jeżeli adres docelowy jest ustawiony na (*). Jednak z uwagi na to, że dostępne funkcjonalności są ściśle związane z zasobem, pytanie o możliwości serwera jest używane głównie jako ping (sprawdzenie dostępności) do serwera. W przypadku zapytania o dostępne opcje danego zasobu, otrzymujemy listę dostępnych metod, które możemy wywołać na tym zasobie. Request Response OPTIONS /users/12 Host: example.com HTTP/1.1…

Read More Read More

Metody HTTP

Metody HTTP

W zapytaniu HTTP metoda to umowna nazwa akcji, która powinna zostać wykonana po stronie odbiorcy. Metody HTTP pokrywają zdecydowaną większość przypadków wykonywania wszelkich akcji na zasobach. Ponieważ akcje te mogą być różnie zaimplementowane po stronie serwera, omówimy tutaj założenia przyjęte wobec tych metod, których programista powinien się trzymać podczas implementacji zachowań serwera. Aby wprowadzić pewne zasady odnośnie użycia metod, standard HTTP ze względu na cechy metod definiuje 2 grupy: metody bezpieczne i metody idempotentne. Przedstawione poniżej cechy obu grup to…

Read More Read More

HTTP pipelining

HTTP pipelining

Jest to technika, która pozwala za pomocą jednego połączenia TCP przesłać wiele zapytań HTTP bez oczekiwania na otrzymanie rezultatu poprzednich wiadomości. Dzięki temu jesteśmy w stanie lepiej wykorzystać sieć do transferu informacji. Niestety ograniczeniem mechanizmu HTTP pipelining jest to, że odpowiedzi muszą zostać odebrane w kolejności w jakiej zostały wysłane zapytania. W ten sposób mogą być przetwarzane tylko zapytania idempotentne (nie zmieniające stanu obiektu docelowego). Pozostałe typy zapytań muszą być przetwarzane synchronicznie. W wersji HTTP/2 protokołu umożliwiono asynchroniczne wykonywanie zapytań…

Read More Read More

Persistent connection

Persistent connection

To mechanizm pozwalający na wielokrotne użycie jednego połączenia do wysyłania requestów do serwera, czyli tłumacząc dosłownie zachowywanie połączeń. Właściwość ta jest szczególnie przydatna przy pobieraniu treści stron www, gdy poza kodem HTML strony, przeglądarka potrzebuje pobrać dodatkowo wszystkie zasoby niezbędne do poprawnego jej wyświetlenia m.in. obrazy, style, skrypty. Specyfikacja HTTP 1.1 definiuje, że domyślnie połączenie jest zachowywane, chyba że w requeście będzie ustawiony nagłówek: Connection: close W poprzedniej wersji protokołu HTTP 1.0 nie była to wartość domyślna, więc aby wymusić…

Read More Read More

Schemat wiadomości HTTP

Schemat wiadomości HTTP

Nagłówki są to właściwości żądania i odpowiedzi przesyłane wraz z samą wiadomością. Służą one przede wszystkim do sterowania zachowaniem serwera oraz przeglądarki przez nadawcę wiadomości. Spójrzmy na przykładowe wywołanie zapytania HTTP i na odpowiedź na nie. Na jego podstawie będziemy mogli poznać, do czego służą podstawowe nagłówki w zapytaniach. Request: GET index.html HTTP/1.1 Host: www.wp.pl Connection: close User-Agent: Mozilla/5.0 Accept: text/html Treść podstawowego zapytania zaczyna się od typu żądania. Najpopularniejsze to POST i GET. W najprostszym ujęciu GET służy do…

Read More Read More

Wstęp do HTTP

Wstęp do HTTP

Post ten jest początkiem serii opisującej podstawę funkcjonowania obecnie istniejącej sieci. HTTP (HyperText Transfer Protocol) jest protokołem definiującym jakie wiadomości i w jaki sposób są przekazywane poprzez sieć. Używany jest on głównie do komunikacji typu klient-serwer. W ogólnym ujęciu polega to na tym, że klient wysyła do serwera żądanie wykonania zdefiniowanej akcji na zasobie. Zasobem może być strona www oraz rekord w bazie danych. W ten sposób możemy prosić o pobranie strony lub modyfikację zestawu danych. Typowy schemat komunikacji pokazany…

Read More Read More