Тег формы используется для выражения содержания формы; это также известно как контроль формы . Эти формы заполняются относительно данных, которые затем отправляются на удаленный компьютер для дальнейшей обработки. Функционирование формы включает в себя две важные вещи: первая - это спецификация адреса программы, которая обрабатывает содержимое формы с помощью ACTION . Далее приведена спецификация метода, в которой данные формы передаются с помощью атрибута METHOD .
Атрибут ACTION описывает, как обрабатывать HTML-форму. Атрибут METHOD управляет процессом представления данных. Метод GET и POST входит в атрибут METHOD.
Сравнительная таблица
Основа для сравнения | ПОЛУЧИТЬ | СООБЩЕНИЕ |
---|---|---|
Параметры размещены внутри | URI | тело |
Цель | Извлечение документов | Обновление данных |
Результаты запроса | Возможность быть в закладки. | Не может быть в закладки. |
Безопасность | Уязвимы, как присутствующие в открытом тексте | Безопаснее, чем метод GET |
Ограничения типа данных формы | Разрешены только символы ASCII. | Никаких ограничений, даже двоичные данные не допускаются. |
Длина данных формы | Должно быть как можно меньше. | Может лежать в любом диапазоне. |
видимость | Может быть просмотрен кем угодно. | Не отображает переменные в URL. |
Переменный размер | До 2000 символов. | До 8 Мб |
Кэширование | Данные метода могут быть кэшированы. | Не кеширует данные. |
Определение метода 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 Мб.
- Данные метода 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 = female . Программа обрабатывает данные путем разделения данных. Данные формы могут быть закодированы по-разному, используя атрибут ENCTYPE в методе POST.
Содержимое формы обычно не отображается в URL-адресе, и его главное преимущество заключается в том, что значительный объем данных может быть отправлен методом POST.
Заключение
Методы GET и POST используются для отправки данных на сервер, и основное различие между ними заключается в том, что метод GET добавляет данные к URI, определенному в атрибуте действия формы. И наоборот, метод POST присоединяет данные к запрашиваемому телу. Использование метода GET неуместно, когда конфиденциальная информация должна быть заполнена в форме. Метод POST полезен, когда пользователю необходимо ввести пароли или другую конфиденциальную информацию.