В чем особенности применения POST и GET?
Коллеги, автор спрашивал не о том.
А о случаях - когда форму нужно сабмитить через POST, а когда через GET.
Спрашивали - отвечаем.
Надо понимать что GET отправка формы это по сути просто открытие страницы с URL в котором указаны GET параметры. POST же передается в теле запроса и рядовому пользователю не виден.
Соответственно случаи когда форму нужно отправлять через POST
1. Если у вас есть поле input type=file
2. Если у вас есть большие текстовые поля
3. Если вы не хотите что бы пользователь видел параметры которые ушли на сервер
Случаи когда форму лучше отправлять через GET
1. Когда пользователь должен оказаться на странице с url в котором видны параметры отправленной формыПример: форма поиска товаров в интернет магазине
2. Если вы не хотите что бы при попытке обновить итоговую страницу выдавался вопрос про форму.
3. ... не смог придумать :)
Вот, кстати, да. Давно у меня нет понимания четкого понимания где какой из методов использовать (благо, что я не по web-у специализируюсь).
В моем понимании GET - в большей степени предназначен для получения каких-то данных (каких именно - специализируется в адресной строке и кастомизируется передаваемыми параметрами), плюс к тому, GET полегковестнее чтоли (нет накладных расходов на допольнительные заголовки). POST же предназначен дял отправки каких-то данных; тут более широкий спектр как в типе данных (помимо текстовых легко передавать бинарные), так и в объеме (GET сильно урезан в этом плане).
Но вот для чего может понадобиться в классической форме method="get"? Ведь форма всегда (!) подразумевает именно отправку информации. Тем не менее, такая возможность есть. Или это просто неправильное использование средств, которыми мы выстреливаем себе в ногу?