Metody żądania HTML
- Poprzednia strona Wiadomość HTTP
- Następna strona Skróty klawiaturowe
Co to jest HTTP?
Protokół Przekazywania Hyper tekstu (Hypertext Transfer Protocol, skrócony do HTTP) ma na celu umożliwienie komunikacji między klientem a serwerem.
HTTP pełni rolę protokołu żądania-odpowiedzi między klientem a serwerem.
Przykład: klient (przeglądarka) wysyła żądanie HTTP do serwera; następnie serwer zwraca odpowiedź do klienta. Odpowiedź zawiera informacje o stanie żądania, może również zawierać żądane treści.
Metoda HTTP
- GET
- POST
- PUT
- HEAD
- DELETE
- PATCH
- OPTIONS
Najczęściej używane metody to: GET i POST.
Metoda GET
GET używane jest do żądania danych z określonego zasobu.
GET jest jednym z najczęściej używanych metod HTTP.
Proszę zauważyć, że ciąg zapytania (para nazwa/wartość) jest wysyłany w URL żądania GET:
/test/demo_form.php?name1=value1&name2=value2
Oto kilka innych uwag dotyczących żądań GET:
- Żądanie GET można buforować
- Żądanie GET zostanie zachowane w historii przeglądarki
- Żądanie GET można dodać jako zakładkę
- Żądanie GET nie powinno być używane do przetwarzania danych wrażliwych
- Żądanie GET ma ograniczenia dotyczące długości
- Żądanie GET powinno być używane tylko do pobierania danych (nie do modyfikacji)
Metoda POST
POST używa się do wysyłania danych do serwera w celu utworzenia/aktualizacji zasobu.
Dane wysyłane przez POST do serwera są przechowywane w ciele żądania HTTP:
POST /test/demo_form.php HTTP/1.1 Host: codew3c.com name1=value1&name2=value2
POST jest jednym z najczęściej używanych metod HTTP.
Oto kilka innych uwag dotyczących żądań POST:
- Żądanie POST nie będzie buforowane
- Żądanie POST nie zostanie zachowane w historii przeglądarki
- Żądanie POST nie może być dodane jako zakładka
- Żądanie POST nie ma wymagań dotyczących długości danych
Metoda PUT
PUT używa się do wysyłania danych do serwera w celu utworzenia/aktualizacji zasobu.
Różnica między POST a PUT polega na tym, że żądanie PUT jest idempotentne (niepowodujące zmiany). Oznacza to, że wielokrotne wywołanie tego samego żądania PUT zawsze będzie miało ten sam wynik. W przeciwieństwie do tego, powtarzanie wywołań żądań POST ma efekt wielokrotnego tworzenia tego samego zasobu.
Metoda HEAD
HEAD jest prawie takie same jak GET, ale bez ciała odpowiedzi.
Innymi słowy, jeśli żądanie GET /users zwraca listę użytkowników, to żądanie HEAD /users wyśle ten sam żądanie, ale nie zwróci listy użytkowników.
Żądanie HEAD jest przydatne do sprawdzenia, co zwróci żądanie GET przed rzeczywistym wysłaniem (np. przed pobraniem dużego pliku lub ciała odpowiedzi).
Metoda DELETE
Metoda DELETE usuwa określony zasób.
Metoda OPTIONS
Metoda OPTIONS opisuje opcje komunikacji zasobu docelowego.
Porównanie GET z POST
Poniższa tabela porównuje dwa metody HTTP: GET i POST.
GET | POST | |
---|---|---|
Przycisk wstecz/odśwież | Bezpieczne | Dane będą ponownie wysłane (przeglądarka powinna poinformować użytkownika, że dane będą ponownie wysłane). |
Zakładki | Można dodać jako zakładkę | Nie można dodawać jako zakładki |
Buforowanie | Można je buforować | Nie można pamiętać w pamięci podręcznej |
Typ kodowania | application/x-www-form-urlencoded | application/x-www-form-urlencoded lub multipart/form-data. Używaj wielokrotnej kodowania dla danych binarnych. |
Historia | Parametry są przechowywane w historii przeglądarki. | Parametry nie są przechowywane w historii przeglądarki. |
Ograniczenia długości danych | Tak. Kiedy wysyłasz dane, metoda GET dodaje dane do URL; długość URL jest ograniczona (maksymalna długość URL wynosi 2048 znaków). | Brak ograniczeń. |
Ograniczenia typów danych | Zezwala tylko na znaki ASCII. | Brak ograniczeń. Zezwala również na dane binarne. |
Bezpieczeństwo | W porównaniu do POST, GET ma niższy poziom bezpieczeństwa, ponieważ wysyłane dane są częścią URL. Nigdy nie używaj GET do wysyłania hasła lub innych wrażliwych informacji! |
POST jest bezpieczniejszy niż GET, ponieważ parametry nie są przechowywane w historii przeglądarki ani w dzienniku serwera web. |
Widoczność | Dane są widoczne dla wszystkich w URL. | Dane nie będą wyświetlane w URL. |
- Poprzednia strona Wiadomość HTTP
- Następna strona Skróty klawiaturowe