Doporučená, 2021

Redakce Choice

Rozdíl mezi metodou GET a POST v HTML

GET a POST jsou dvě účinné techniky, které mohou posílat data na server a prohlížeč je nutně potřebuje pro komunikaci se serverem. Tyto dvě metody jsou odlišné, kde metoda GET přidává kódovaná data do URI, zatímco v případě metody POST jsou data připojena spíše k tělu než URI. Pro načítání dat se navíc používá metoda GET. Metoda POST se naopak používá pro ukládání nebo aktualizaci dat.

Značka formuláře se používá k vyjádření obsahu formuláře; toto je také známé jako ovládací prvek formuláře . Tyto formuláře jsou vyplněny údaji, které jsou následně odeslány vzdálenému počítači pro další zpracování. Funkce formuláře obsahuje dvě klíčové věci: bývalá je specifikace adresy programu, který zpracovává obsah formuláře pomocí ACTION . Později je specifikována metoda, v rámci které data formuláře proudí pomocí atributu METHOD .

Atribut ACTION popisuje způsob zpracování formuláře HTML. Atribut METHOD řídí proces odesílání dat. Metoda GET a POST spadá pod atribut METHOD.

Srovnávací graf

Základ pro srovnáníDOSTATPOŠTA
Parametry jsou umístěny uvnitřURITělo
ÚčelVyhledávání dokumentůAktualizace dat
Výsledky dotazuSchopen být záložkou.Nelze označit záložkou.
BezpečnostníZranitelný, jak je přítomen v prostém textuBezpečnější než metoda GET
Omezení typu datového typuPovoleny jsou pouze znaky ASCII.
Žádná omezení, ani binární data jsou povolena.
Délka dat formulářeMělo by být co nejmenší.Mohl by ležet v jakémkoliv rozsahu.
ViditelnostMůže být viděn kýmkoliv.Nezobrazuje proměnné v adrese URL.
Variabilní velikostAž 2000 znaků.Až 8 Mb
Ukládání do mezipamětiData metod mohou být ukládána do mezipaměti.Neukládá data do mezipaměti.

Definice metody GET

Metoda GET se používá k vyžádání adresy URL z webového serveru k načtení dokumentů HTML. Je to běžná metoda pro prohlížeče, která poskytuje informace, které se počítají jako součást protokolu HTTP. Metoda GET reprezentovaná ve formě URL, takže může být označena záložkou. GET je široce používán ve vyhledávačích. Po odeslání dotazu uživatelem do vyhledávače motor provede dotaz a poskytne výslednou stránku. Výsledky dotazu lze nastavit jako odkaz (záložku).

Metoda GET umožňuje generování kotev, což napomáhá v přístupu k programu CGI s dotazem devoing využití formuláře. Dotaz je vytvořen do odkazu, takže když je odkaz navštěvován, program CGI načte vhodné informace z databáze.

Metoda GET má některé problémy se zabezpečením, protože vložená data jsou viditelná v adrese URL. Pomocí metody GET lze předat pouze omezené množství dat, protože délka adresy URL, kterou může prohlížeč procházet, může být tisíce znaků.

Další otázkou týkající se metody GET je, že se nemůže zabývat cizími jazyky. Metoda GET se nedoporučuje používat, ale pokud nejsou definovány atributy metody, použije se jako výchozí metoda GET.

Definice metody POST

Metoda POST je vhodná ve stavu, kdy může projít značné množství informací. Když server přijme požadavek formulářem využívajícím POST, bude nadále „poslouchat“ informace vlevo. Jednoduchými slovy, metoda přenáší všechny relevantní informace o vstupu formuláře okamžitě po provedení požadavku na adresu URL.

Metoda POST potřebuje navázat dva kontakty s webovým serverem, zatímco GET to dělá. Požadavky v POST jsou spravovány stejným způsobem, jako je řízen metodou GET, kde jsou mezery reprezentovány znaménkem plus (+) a zbytky znaků jsou zakódovány ve vzoru URL. Může také posílat položky souboru.

Klíčové rozdíly mezi metodou GET a POST v HTML

  1. Metoda GET umístí parametry do URI, zatímco metoda POST připojí parametry do těla.
  2. GET se v podstatě používá pro načítání informací. Účelem metody POST je oproti tomu aktualizovat data.
  3. Výsledky dotazu POST nelze označit záložkou, zatímco výsledky dotazu GET mohou být označeny záložkami, protože existují ve formě adresy URL.
  4. V GET metodě jsou informace viditelné v URL, což zvyšuje zranitelnost a riziko hackingu. Naproti tomu metoda POST nezobrazuje proměnnou v URL a v ní lze použít i více kódovacích technik, což ji činí odolnou.
  5. Při použití metody GET ve formuláři jsou v datových typech akceptovány pouze znaky ASCII. Metoda POST naopak neváže datové typy formulářů a binární povolení a znaky ASCII.
  6. Proměnná velikost metody GET je cca 2000 znaků. Metoda POST naopak umožňuje měnit velikost až 8 Mb.
  7. Data metody GET jsou cachovatelná, zatímco data metody POST nejsou.


Příklad GET

Když uživatel zadá libovolnou adresu URL v pruhu umístění prohlížeče, například http // www.example.com / xyz / file1.htm . Adresa je poté převedena na platný požadavek HTTP GET, například GET / xyz / file1.htm HTTP / 1.0 .

Tento požadavek je poté přenesen na server www.example.com . Požadavek požádá o soubor1.htm v adresáři xyz a zda se připojuje k dialektu 1.0 protokolu HTTP. Zde uživatel po odeslání souboru nedostane soubor sám, ve skutečnosti je program spuštěn na pozadí pro zpracování dat formuláře.

Uživatel musí předat data formuláře s názvem programu pro jeho provedení. K dosažení tohoto provedení jsou informace o formuláři připojeny k požadované adrese URL. Generuje URL se stovkami znaků spolu se skutečnými daty, například //www.example.com/cgi-x/comments.exe?Name=AI+Alena&Age=23&Gender=female .

Příklad POST

Údaje odeslané formulářem se mohou jevit jako Název = AI + Alena & Věk = 23 & Pohlaví = žena . Program zpracovává data rozdělením dat. Data formuláře mohou být kódována odlišně pomocí atributu ENCTYPE v metodě POST.

Obsah formuláře obvykle není viditelný v adrese URL a jeho hlavní výhodou je, že pomocí metody POST lze odeslat značné množství dat.

Závěr

Metoda GET a POST se používá pro odesílání dat na server a hlavní rozdíl mezi nimi spočívá v tom, že metoda GET připojuje data k URI definovanému v atributu akce formuláře. Naopak metoda POST připojuje údaje dožádanému subjektu. Použití metody GET je nevhodné, pokud je nutné vyplnit citlivé informace ve formuláři. Metoda POST je užitečná, pokud uživatel vyžaduje vyplnění hesel nebo jiných důvěrných informací.

Top