post数据过大的问题

647 阅读1分钟

转载自:blog.csdn.net/wangchh1988…

背景:

  • 后端服务使用springboot启动;
  • 参数方式为param方式;

当post到后端的数据过大时可能会遇到问题,由于springboot默认给tomcat的配置是数据大小为2M,所以大于此值时会报错(博主的是客户端收到的是302然后socket断连)
原始tomcat配置post数据大小的配置:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="2000" redirectPort="8443" URIEncoding="UTF-8" maxThreads="3000" compression="on" compressableMimeType="text/html,text/xml" maxPostSize="10240"/>

maxPostSize参数即为限制post数据大小的参数,单位是byte,需要注意的是tomcat 7.0.63 之前如果此值为0或者负数,则标识不限制post数据的大小(可以无限大),但之后的版本中只能传负值才代表不限制大小;

nginx也有可能成为限制请求数据大小的原因:

  • client_max_body_size 100m –限制最大为100M
  • client_body_buffer_size 此选项会控制缓存,不会报错