Тег форми використовується для вираження змісту форми; це також відомо як контроль форми . Ці форми заповнюються відносно даних, які потім відправляються на віддалену машину для подальшої обробки. Функціонування форми включає дві важливі речі: колишнє - специфікація адреси програми, яка обробляє вміст форми за допомогою ACTION . Пізніше вказується специфікація методу, в рамках якої дані з форми передаються за допомогою атрибута METHOD .
Атрибут ACTION описує спосіб обробки HTML-форми. Атрибут METHOD керує процесом подання даних. Метод GET і POST підпадає під атрибут METHOD.
Діаграма порівняння
Основа для порівняння | GET | POST |
---|---|---|
Параметри розміщені всередині | 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 . Потім адреса перетворюється у дійсний запит GET GET, наприклад, GET / xyz / file1.htm HTTP / 1.0 .
Цей запит потім передається на сервер www.example.com . Запит запитує файл1.htm у каталозі xyz, і чи підключається він до діалекту 1.0 HTTP. Тут користувач не отримує файл сам по собі після подання файлу, насправді програма працює у фоновому режимі для обробки даних форми.
Користувач вимагає передавати дані форми з назвою програми для її виконання. Для досягнення цього виконання інформація про форму додається до запитаної URL-адреси. Він генерує URL, що має стохарактер, разом з фактичними даними, наприклад, //www.example.com/cgi-x/comments.exe?Name=AI+Alena&Age=23&Gender=female .
Приклад POST
Дані, надіслані формою, можуть виглядати як Name = AI + Alena & Age = 23 & Gender = female . Програма обробляє дані шляхом розділення даних. Дані форми можуть бути закодовані по-різному, використовуючи атрибут ENCTYPE у методі POST.
Зміст форми зазвичай не відображається в URL, і його головна перевага полягає в тому, що значна кількість даних може бути подано за допомогою методу POST.
Висновок
Метод GET і POST використовуються для надсилання даних на сервер, і основна відмінність між ними полягає в тому, що метод GET додає дані до URI, визначеного в атрибуті дії форми. І навпаки, метод POST надає дані запитуваному тілу. Використання методу GET є недоречним, коли конфіденційну інформацію необхідно заповнити у формі. Метод POST корисний, коли користувачеві потрібно заповнити паролі або іншу конфіденційну інформацію.