我需要用JSP做一些小任务;对JSP非常陌生我想知道是否有可能只从HTTP请求中获取 GET 或仅 POST 参数。
我看过ServletRequest.getParameter(和alikes)但看起来这些方法同时获得了GET 和 POST参数。有没有办法只获取其中一个,而无需自己解析URL或请求体?如果没有,是否有任何优先规则值覆盖哪些(如POST参数总是覆盖GET参数)?
答案 0 :(得分:13)
通常,最好在servlet中处理请求。他们使用doGet(request, response)
和doPost(request, response)
方法来区分这两种方法。
如果您真的坚持在JSP中执行此操作,则可以使用request.getMethod()
区分方法。它会返回GET
或POST
。
由于这是家庭作业,我想重点是学习如何使用servlet及其doX
方法,所以这样做。
更新:您可以获取查询字符串(request.getQueryString()
),这只是get参数,并解析它,但我不会说这是一种常见且良好的做法。
答案 1 :(得分:4)
在JSP中,您可以查看请求对象以确定它是什么类型的请求(GET或POST),但只有一个参数映射。
答案 2 :(得分:-2)
尝试[Servlet + JSP]。在Servlet中,您可以选择doPost()或doGet()