【发布时间】:2010-11-14 15:04:48
【问题描述】:
我需要用 JSP 做一些小任务;作为 JSP 的新手,我想知道是否有可能从 HTTP 请求中仅获取 GET 或仅获取 POST 参数。
我见过ServletRequest.getParameter(和类似的),但似乎这些方法同时获得了 GET 和 POST 参数。有没有办法只获取其中一个,而无需自己解析 URL 或请求正文?如果没有,是否有任何值覆盖哪个值的优先规则(如 POST 参数总是覆盖 GET 参数)?
【问题讨论】:
-
这实际上是代码异味。功能需求是什么?为什么不给 GET 和 POST 一个不同的名字呢?
-
@BalusC:这实际上是一个安全问题。要求仅将特定参数作为 POST 参数(或分别作为 GET)发送可以提高最终用户的安全性。而且我真的不想盲目地接受任何类型的参数,因为我在多年创建 Web 应用程序的过程中学会了避免这种情况。
-
然后只需确定请求方法或实现一个 servlet,它使您只能在某个方法上执行代码。请参阅 Bozho 的回答。
-
好吧,看看我对那个答案的评论。