0

如何HttpServletRequest取消设置或删除参数(尤其是在 JSP 中)(例如在 PHP 中使用该unset($_POST['index'])函数)?我尝试了以下方法。

Map requestMap=request.getParameterMap();
requestMap.remove("index");

但它说

不允许对锁定的 ParameterMap 进行修改

有没有办法取消设置请求参数?

4

2 回答 2

3

有没有办法取消设置请求参数?

AFAIK,不在 JSP 本身(或任何 Servlet 中)。

但是您可以编写一个过滤器,以替换参数映射的方式包装当前请求。

于 2012-07-03T03:45:44.393 回答
1

你要做的就是写一个HttpFilter,写一个HttpRequestWrapper你的(MyRequestWrapper)。覆盖你的方法getParameter,这样你就不会返回参数(可能总是返回 null)。HttpRequestWrapperMyRequestWrapper

在过滤器代码中,您应该覆盖该方法并从ObjectdoFilter创建一个新方法,然后执行MyRequestWrapperServletRequestchanin.doFilter(myRequestWrapper, response)

于 2012-07-03T06:22:02.320 回答