Параметры JSP, GET и POST
Мне нужно выполнить некоторые небольшие задачи с JSP; будучи очень новым для JSP, мне было интересно, есть ли возможность получить только GET или только параметры POST из HTTP-запроса.
Я видел ServletRequest.getParameter (и alikes), но кажется, что эти методы получают оба параметра GET и POST. Есть ли способ получить только один из них, без синтаксического разбора URL-адреса или тела запроса? И если нет, есть ли правило приоритета, значения которого перезаписываются, которые (например, параметры POST всегда переписывают параметры GET)?
Ответы
Ответ 1
Как правило, запросы лучше обрабатывать в сервлетах. Они имеют методы doGet(request, response)
и doPost(request, response)
, чтобы различать два.
Если вы действительно настаиваете на том, чтобы делать это в JSP, вы можете отличить методы, используя request.getMethod()
. Он вернет GET
или POST
.
Так как это домашнее задание, я предполагаю, что нужно научиться использовать сервлеты и их методы doX
, поэтому сделайте это именно так.
Обновление: Вы можете получить строку запроса (request.getQueryString()
), которая является только параметрами get, и разобрать его, но я бы не сказал, что общая и хорошая практика.
Ответ 2
В JSP вы можете посмотреть объект запроса, чтобы определить, какой он был (GET или POST), но есть только одна карта параметров.
Ответ 3
Попробуйте [Servlet + JSP]. В Servlet вы можете выбирать между doPost() или doGet()