Тагът на формуляра се използва за изразяване на съдържанието на формуляра; това също е известно като форма за контрол . Тези формуляри се попълват с данни, които след това се изпращат на отдалечената машина за по-нататъшна обработка. Функционирането на формата включва две важни неща: бивша е спецификацията на адреса на програмата, която обработва съдържанието на формата с помощта на ACTION . По-късно е описана спецификацията на метода, при която данните от формуляра се предават с помощта на атрибута METHOD .
Атрибутът ACTION описва начина на обработка на HTML формата. Атрибутът METHOD управлява процеса на подаване на данните. Методът GET и POST е под атрибута METHOD.
Сравнителна таблица
Основа за сравнение | GET | POST |
---|---|---|
Параметрите се поставят вътре | URI | тяло |
Предназначение | Извличане на документи | Актуализиране на данни |
Резултати от заявката | Способни да бъдат маркирани. | Не може да се маркира. |
Сигурност | Уязвима, както присъства в открит текст | По-безопасен от GET метод |
Ограничения за типа данни | Разрешени са само ASCII знаци. | Няма ограничения, дори бинарни данни са разрешени. |
Дължина на данните за формулярите | Трябва да се съхранява възможно най-малко. | Може да лежи във всеки диапазон. |
видимост | Може да се види от всеки. | Не показва променливи в URL адреса. |
Размер на променливата | До 2000 знака. | До 8 Mb |
кеширане | Данните за методите могат да бъдат кеширани. | Не кешира данните. |
Определяне на GET метод
GET методът се използва за искане на URL от уеб сървър за извличане на HTML документи. Това е конвенционален метод за браузърите да доставят информацията, която се брои като част от HTTP протокола. Методът GET е представен под формата на URL адрес, така че да може да се маркира. GET се използва широко в търсачките. След подаване на заявка от потребителя към търсачката, двигателят изпълнява заявката и дава получената страница. Резултатите от заявката могат да бъдат зададени като връзка (отбелязани с отметка).
Методът GET дава възможност за генериране на котви, което помага при достъпа до CGI програмата с заявка, която не съдържа използването на формуляр. Заявката се конструира във връзка, така че когато се посети връзката, програмата CGI ще извлече подходящата информация от базата данни.
Методът GET има някои проблеми със сигурността, защото вмъкнатите данни се виждат в URL адреса. Само ограничено количество данни може да бъде предавано чрез метод GET, тъй като дължината на URL адреса, който браузърът може да премине, може да бъде хиляда знака.
Друг въпрос по отношение на метода GET е, че той не може да се занимава с чужди езици. Методът GET не се препоръчва да се използва, но все пак, когато атрибутите на метода не са дефинирани, методът GET се използва по подразбиране.
Определение на POST метода
Методът POST е подходящ в състояние, при което може да премине значително количество информация. Когато сървър получава заявката от формуляр, използващ POST, той продължава да “слуша” за лявата информация. С прости думи, методът прехвърля цялата релевантна информация от входа на формуляра незабавно след като е направена заявката към URL адреса.
Методът POST трябва да установи два контакта с уеб сървъра, докато GET го прави. Заявките в POST се управляват по същия начин, както се управлява в GET метода, където пространствата са представени в знака плюс (+), а останалите знаци са кодирани в URL модела. Тя може също да изпраща елементи от файл.
Ключови разлики между GET и POST метода в HTML
- Методът GET поставя параметрите вътре в URI, докато методът POST добавя параметрите в тялото.
- GET се използва основно за извличане на информацията. За разлика от това, целта на метода POST е да актуализира данните.
- Резултатите от заявката за POST не могат да бъдат маркирани, докато резултатите от заявките за GET могат да бъдат маркирани, защото съществуват под формата на URL адрес.
- В метода GET информацията се вижда в URL адреса, който увеличава уязвимостите и риска от хакване. Обратно, методът POST не показва променлива в URL и в него могат да се използват и многобройни техники на кодиране, което го прави устойчив.
- Когато се използва методът GET във формуляра, само типове ASCII се приемат в типовете данни. Напротив, методът POST не обвързва типовете данни и не позволява двоични, както и ASCII символи.
- Размерът на променливата в GET метода е приблизително 2000 знака. Обратно, методът POST позволява до 8 Mb променлив размер.
- Данните за метода GET са кешируеми, докато данните от POST метода не са.
Пример за GET
Когато потребителят въведе някакъв URL адрес в лентата за местоположение на браузър, като http // www.example.com / xyz / file1.htm . След това адресът се преобразува във валидна HTTP GET заявка, например GET / xyz / file1.htm HTTP / 1.0 .
След това заявката се прехвърля на сървъра www.example.com . Заявката изисква file1.htm в xyz директорията и дали се свързва с 1.0 диалект на HTTP. Тук потребителят не получава файла сам по себе си, след като подаде файла, а в действителност програмата се изпълнява във фонов режим, за да обработва данните за формулярите.
Потребителят изисква да премине формулярни данни с името на програмата за нейното изпълнение. За да се постигне това изпълнение, информацията за формуляра се добавя към искания URL адрес. Той генерира URL със сто символи заедно с действителните данни, например, //www.example.com/cgi-x/comments.exe?Name=AI+Alena&Age=23&Gender=female .
Пример за POST
Данните, изпратени от формуляр, могат да изглеждат като Име = AI + Alena & Age = 23 & Gender = женски . Програмата обработва данните чрез разделяне на данните. Данните за формуляри могат да бъдат кодирани по различен начин, използвайки атрибута ENCTYPE в метода POST.
Съдържанието на формата обикновено не се вижда в URL адреса и неговото основно предимство е, че може да бъде подадено значително количество данни, използвайки метода POST.
заключение
Методът GET и POST се използват за изпращане на данни към сървъра и основната разлика между тях е, че GET методът добавя данните към URI, дефиниран в атрибута за действие на формуляра. Обратно, методът POST придава данни на искания орган. Използването на GET метод е неподходящо, когато чувствителната информация трябва да бъде попълнена във формуляра. Методът POST е полезен, когато потребителят изисква да попълни паролите или друга поверителна информация.