服务器请求丢失参数

uri*_*rir 3 java tomcat web-services servlets servlet-filters

Tomcat中Request参数被丢弃的相关问题

嗯......显然,即使是最简单的请求(如下所示)在某些服务器上也会丢失参数,而有些则没问题。

@GET
@Path("/get-retrieve")
public String foo(){
    return ""+httpServletRequest.getParameterMap().size();
}
Run Code Online (Sandbox Code Playgroud)

所以返回值是0(零)。

更新:AccessLogValve 记录的请求包含参数

127.0.0.1 - - [26/Nov/2012:03:04:58 -0800] "POST /api/get-retrieve?x=y HTTP/1.1" 200 16
Run Code Online (Sandbox Code Playgroud)

所以,问题可能出在 Tomcat 中的某个地方,抛出了这些参数......

Ale*_*lex 5

我曾经遇到过这样的情况,经过长时间的调查,发现问题出在 Tomcat 的 server.xml 中连接器的定义中:

<Connector connectionTimeout="20000" maxHttpHeaderSize="9000" maxParameterCount="100" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

查看“maxParameterCount”的定义,在我们的例子中,它被设置为 0,这导致所有请求参数都被删除。