tomcat7以上ajax的post请求接受不到参数问题

AJAX post传参后台获取不到查询参数。

网上找了各种方法,包括设置content-type,又是把json转成json格式字符串,问题依然存在,但是把post改成get又可以获取到,百思不得其解。

后来看tomcat7配置的时候,把maxPostSize="0"的配置去掉的时候问题消失。

tomcat7以上ajax的post请求接受不到参数问题_第1张图片

根据以往的经验,maxPostSize="0"不就是不限制post数据的大小的么,怎么还反倒限制了数据的大小了呢?

因为项目里面要post一个数据到后台保存(大小可能大于2M),所以这大小就不能限制。

再后来在tomcat的官方文档里发现了这个maxPostSize的变动。

tomcat6.0的文档里说maxPostSize不限制的设置是小于等于0

原话:The maximum size in bytes of the POST which will be handled by the container FORM URL parameter parsing. The feature can be disabled by setting this attribute to a value less than or equal to 0. If not specified, this attribute is set to 2097152 (2 megabytes).

tomcat7以上ajax的post请求接受不到参数问题_第2张图片

tomcat7.0的文档里面说maxPostSize不限制的设置是小于0

原话:The maximum size in bytes of the POST which will be handled by the container FORM URL parameter parsing. The limit can be disabled by setting this attribute to a value less than zero. If not specified, this attribute is set to 2097152 (2 megabytes). Note that theFailedRequestFilter can be used to reject requests that exceed this limit.

tomcat7以上ajax的post请求接受不到参数问题_第3张图片

所以把maxPostSize设置成“-1”,问题就得到了解决

tomcat7以上ajax的post请求接受不到参数问题_第4张图片

你可能感兴趣的:(tomcat)