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í | DOSTAT | POŠTA |
---|---|---|
Parametry jsou umístěny uvnitř | URI | Tělo |
Účel | Vyhledávání dokumentů | Aktualizace dat |
Výsledky dotazu | Schopen být záložkou. | Nelze označit záložkou. |
Bezpečnostní | Zranitelný, jak je přítomen v prostém textu | Bezpečnější než metoda GET |
Omezení typu datového typu | Povoleny jsou pouze znaky ASCII. | Žádná omezení, ani binární data jsou povolena. |
Délka dat formuláře | Mělo by být co nejmenší. | Mohl by ležet v jakémkoliv rozsahu. |
Viditelnost | Může být viděn kýmkoliv. | Nezobrazuje proměnné v adrese URL. |
Variabilní velikost | Až 2000 znaků. | Až 8 Mb |
Ukládání do mezipaměti | Data 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
- Metoda GET umístí parametry do URI, zatímco metoda POST připojí parametry do těla.
- GET se v podstatě používá pro načítání informací. Účelem metody POST je oproti tomu aktualizovat data.
- 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.
- 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.
- 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.
- Proměnná velikost metody GET je cca 2000 znaků. Metoda POST naopak umožňuje měnit velikost až 8 Mb.
- 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í.