Pobierz i opublikuj

Anonim

Uzyskaj vs post

"Get" i "Post" są METODAMI HTTP do wysyłania parametrów danych z przeglądarki klienta na serwer. Parametry te mogą być danymi wejściowymi formularza, zapytaniem wyszukiwania z karty wyszukiwania itp. Za każdym razem, gdy strona internetowa musi odpowiadać użytkownikowi, lub możemy powiedzieć, że jest to interaktywna strona użytkownika, wówczas te METODY HTTP mają kluczowe znaczenie. rola, aby dostarczyć użytkownikowi dane wejściowe do serwera. Ale możesz się zastanawiać, dlaczego potrzebujemy dwóch różnych metod, aby wysłać dane wejściowe? Aby odpowiedzieć na to pytanie, bardzo ważne jest, aby zrozumieć, jak działają te metody, aby lepiej zrozumieć faktyczną różnicę.

Składnia:

Przyjrzyjmy się teraz składni metod HTTP Get i Post.

(To jest składnia Get)

(To jest składnia Post)

Nie ma większej różnicy w składni, z wyjątkiem słowa Get lub Post.

W jaki sposób dane wejściowe są wysyłane do serwera?

Dane wejściowe są dołączane do adresu URL po znaku "?" W metodzie "Get while", który jest wysyłany osobno jako wiadomość w metodzie Post. Czasami możesz zobaczyć swoje zapytanie w adresie URL po naciśnięciu klawisza Enter. Jeśli nie, spróbuj raz w Google. Jeśli jest to metoda Get, możesz zauważyć zapytanie wyszukiwania po znaku "?" W tym samym adresie URL. W tym samym czasie nie możemy odczytać danych wejściowych, gdy używamy Postu, ponieważ jest on uruchamiany osobno, a nie z adresem URL.

Typ wejścia:

Jako Pobierz dołącza dane wejściowe do adresu URL, powinien on mieć postać znaków ASCII. Ale Post może wysyłać dane binarne bez żadnych ograniczeń. Dlatego Post jest bardziej elastyczny w stosunku do typu wejściowego, ponieważ umożliwia zarówno ASCII, jak i dane binarne.

Liczba parametrów:

Metoda Get może wysyłać tylko ograniczone parametry w porównaniu do Post. Zwykle jest on ograniczony do liczby 2K, aw niektórych przypadkach serwery mogą obsługiwać parametry zliczania do 64k. Ale metoda Post jest w stanie wysyłać równomierne pliki na serwer w postaci wiadomości. Tak, kiedy porównamy oba z nich, możemy powiedzieć, że Post lepiej przesłać więcej danych wejściowych jako parametry.

Rozmiar wejściowy:

Zasadniczo maksymalna dopuszczalna długość adresu URL zależy od przeglądarki, której używamy, oraz od serwera WWW, który przetwarza żądanie adresu URL. Ponieważ Get wysyła dane wejściowe wraz z adresem URL, możemy wysłać maksymalnie 2048 znaków, a w niektórych przypadkach może się różnić. Ale nie ma ograniczenia co do rozmiaru wejściowego, gdy używamy metody Post.

Widoczność wejścia:

Jeśli testowałeś wyszukiwarkę Google, mógłbyś zrozumieć, że wejście Pobierz jest widocznie widoczne dla innych. Dzieje się tak dlatego, że dane wejściowe są po prostu dołączane do adresu URL i każdy może je zobaczyć w przestrzeni adresu URL. Ale jeśli użyto metody Post, to nikt nie byłby w stanie określić, co wysłaliśmy jako dane wejściowe. Jeśli nie zależy Ci zbytnio na widoczności danych wejściowych, po prostu idź naprzód z Get. W przeciwnym razie użyj funkcji Post, aby ukryć dane wejściowe przed innymi.

Metoda domyślna:

Do tej pory można było zrozumieć, jak obie metody działają, aby wysyłać dane wejściowe do serwerów. Ze względu na prostotę użycia i transmisji parametrów, domyślną metodą HTTP jest "Get". Chociaż metoda Post ma różne zalety w stosunku do Get, prostszy staje się priorytetem, gdy przyjmuje wartość domyślną. Tak więc, jeśli nie określisz konkretnie metody, jest ona traktowana jako żądanie pobrania.

Historia przeglądarki:

Ponieważ metoda Get przesyła dane przez adresy URL, już wysłane dane pozostają w historii przeglądarek internetowych. Dlatego każdy mógł zobaczyć, co wysłaliśmy na serwery, analizując historię naszej przeglądarki. Metoda Post nie stwarza takiej szansy, ponieważ nigdy nie pozwala przeglądarkom na zapisywanie informacji. W rzeczywistości nie ma nic wspólnego z przeglądarkami internetowymi, gdy dane są wysyłane za pomocą metody Post, ponieważ wszystko jest wysyłane za pośrednictwem wiadomości.

Który jest bezpieczny?

Analizujemy różne różnice między metodami Get i Post i czy najwyższy czas wiedzieć, które są zabezpieczone? Spójrzmy na różne czynniki bezpieczeństwa, aby zidentyfikować to samo.

  • Zakładki: Metoda Get pozwala na dodawanie zakładek, ale post nie pozwala na to. Dodane do zakładek dane mogą być później widoczne dla każdego i jest to absolutnie zagrożenie dla bezpieczeństwa! Jeśli twoje dane zawierają bardzo poufne informacje, takie jak hasła, dane konta bankowego, itp., Get może przekazać te informacje innym. Dlatego lepiej postępować z Post, jeśli przetwarzasz poufne informacje.
  • Buforowanie: Pamięć cache przechowuje informacje dla przyszłych wyszukiwań, a to w rzeczywistości oszczędza nasz czas. Choć wydaje się, że wykonuje użyteczną pracę, istnieją możliwości wycieku danych, gdy buforowana informacja trafia do niewłaściwych rąk. Get pozwala na buforowanie, podczas gdy Post nigdy nie pozwala na buforowanie! Dlatego Post jest bardziej bezpieczny niż Get.
  • Odśwież lub Wstecz: Gdy klikniemy ikonę Odśwież lub Wstecz, URL strony internetowej zostanie ponownie wykonany. Ale to ponowne wykonanie nie nastąpi, gdy starsze dane znajdują się w pamięci podręcznej systemu. Tak więc w takim scenariuszu są szanse, że otrzymasz już pobrane dane z serwera po Odśwież lub Wstecz. Powinniśmy określić, kiedy nastąpi ten scenariusz, korzystając z Get lub Post? Ponieważ wiemy, że buforowanie odbywa się w Get a nie w Post, starsze pobieranie danych jest możliwe tylko za pomocą Get. Nawet może się zdarzyć w Post, ale prosi o pozwolenie użytkownika, zanim to zrobi. Tak, otrzymujemy ostrzeżenia przed takimi pobraniami w Post.
  • Hakerstwo: Każdy, kto jest silny technicznie, może łatwo złamać adres URL powiązany z metodą Get i może przechwycić nasze informacje. Ale nie jest to możliwe w Post i przynajmniej wymaga wielkiego wysiłku, aby go złamać! Przez większość czasu jesteśmy bezpieczni, gdy jest używany Post zamiast korzystania z Get.

Kiedy używać Get & When do korzystania z Post?

Z naszej dyskusji jasno wynika, że ​​Get jest mniej zabezpieczony i nie zaleca się go używać, gdy mamy do czynienia z bardzo poufnymi informacjami. Pamięć podręczna i przeglądarka internetowa mogą przekazywać nasze informacje innym w przypadku Get. Ale Post pozostaje bezpieczny nawet w takich okolicznościach, ponieważ nigdy nie pozwala na buforowanie, dodawanie zakładek itp. Dlatego lepiej jest używać Post, gdy wysyłasz wiele bezpiecznych danych.

Spójrzmy na różnice w łatwiejszej do zrozumienia formie tabelarycznej.

S. Nie

Różnice w

Żądania

DOSTAĆ

SŁUPEK

1 Składnia Używa słowa kluczowego "get". Używa słowa kluczowego "Post".
2 W jaki sposób wysyłane są dane wejściowe? Wraz z adresem URL dołączanym po symbolu "?". W formie wiadomości.
3 Typ wejściowy Postacie ASCII. Znaki ASCII lub binarne.
4 Liczba parametrów Potrafi obsłużyć parametry od 2k do 64k na podstawie serwera. Bez limitu.
5 Rozmiar wejściowy Umożliwia do 2048 znaków. Bez limitu.
6 Widoczność wysłanych danych Pozostaje widoczny dla wszystkich, ponieważ znajduje się w przestrzeni URL. Nie można go zobaczyć, ponieważ jest wysyłany jako wiadomość.
7 Domyślna metoda Tak. Nie.
8 Historia przeglądarki Wysyłane dane pozostają w historii przeglądarki internetowej i mogą być później widoczne dla każdego. Wysłane dane nev.er znajdują się w historii przeglądarki internetowej i dlatego nikt nie może ich później zobaczyć.
9 Bookmarking Pozwala na zapisanie adresu URL, a następnie wysłanie danych. Nie ma nic wspólnego z wysłanymi danymi, nawet strony internetowe są zakładkami. Ponieważ strony oznaczone zakładkami nie przechowują żadnych informacji o użytkowniku.
10 Buforowanie Strony z pamięci podręcznej przechowują dane wprowadzane przez użytkownika i umożliwiają późniejsze pobieranie. Strony z pamięci podręcznej nigdy nie przechowują danych wprowadzanych przez użytkownika.
11 Odśwież lub wróć Akcje Odśwież lub Wstecz nie ponownie wykonują żądania, jeśli starsze wersje pozostają w pamięci podręcznej. Również takie pobieranie z pamięci podręcznej odbywa się bez żadnego komunikatu ostrzegawczego dla użytkownika. Dlatego użytkownik może myśleć, że jest najnowszy, ale z kolei serwer może zawierać inne dane. Akcje Odśwież lub Wstecz pobierają dane z pamięci podręcznej dopiero po wysłaniu do użytkownika ostrzeżenia. Użytkownik może je anulować, a nawet może ponownie go uruchomić, aby pobrać najnowsze dane z pamięci podręcznej.
12 Hakerstwo Można to łatwo zrobić. Trudno zhakować.
13 Kiedy użyć? Najlepiej nadaje się do wysyłania mniej wrażliwych danych, takich jak zapytania, wiadomości na czacie, treści w mediach społecznościowych, badania online itp., W których nie ma obaw o bezpieczeństwo. Najlepiej nadaje się do wysyłania wielu poufnych danych, takich jak hasła, dane konta bankowego itp., W których bezpieczeństwo budzi największe obawy.

Jest więc jasne, że Get i Post wykonują wejściowe zadanie wysyłania na serwer, ale oba działają inaczej. W zależności od potrzeb możemy wykorzystać trafne metody HTTP, tj. Get lub Post.