背景:

使用http post请求方式的接口,使用request.getParameter("XXX");的方法获取参数的值,当数据量超过几百k的时候,接口接收不到数据或者接收为null。

@RequestMapping(value = "/rcv",method = RequestMethod.POST)

public ResInfo pullApi(HttpServletRequest request) {

String channel = request.getParameter("channel");

}

在application.properties里添加:

spring.http.multipart.max-file-size=-1

spring.http.multipart.max-request-size=-1

默认值:

private String maxFileSize = "1MB"; private String maxRequestSize = "10MB";

这个设置是大小不限制,主要是这个设置。

server.tomcat.max-http-post-size=-1

补充知识:spring boot post请求数据太大接收不到参数(参数为空)报400错误。

spirng boot发送的请求,有的参数数据量大,有的参数数据量小。数据量大的发送不到后端,报400错误。

首先说以jetty为内嵌服务器的时候:

1、修改yml文件或者properties文件,

server.max-http-post-size=200*1024*1024,设置为200m,总够了吧,可以按照量设置小一点。

Spring Boot 1.4.0.M2之后就可以使用这个属性。适合于不修改代码,快速重新部署。

2、在java代码里面实现:

@Bean

public EmbeddedServletContainerCustomizer jettyCustomizer() {

return new EmbeddedServletContainerCustomizer() {

@Override

public void customize(ConfigurableEmbeddedServletContainer container) {

if (container instanceof JettyEmbeddedServletContainerFactory) {

((JettyEmbeddedServletContainerFactory) container)

.addServerCustomizers(new JettyServerCustomizer() {

@Override

public void customize(Server server) {

setHandlerMaxHttpPostSize(200 * 1024 * 1024, server.getHandlers());

}

private void setHandlerMaxHttpPostSize(int maxHttpPostSize,

Handler... handlers) {

for (Handler handler : handlers) {

if (handler instanceof ContextHandler) {

((ContextHandler) handler)

.setMaxFormContentSize(maxHttpPostSize);

}

else if (handler instanceof HandlerWrapper) {

setHandlerMaxHttpPostSize(maxHttpPostSize,

((HandlerWrapper) handler).getHandler());

}

else if (handler instanceof HandlerCollection) {

setHandlerMaxHttpPostSize(maxHttpPostSize,

((HandlerCollection) handler).getHandlers());

}

}

}

});

}

}

};

}

Spring Boot 1.3.x之后可以使用这个功能。

3、设置接收数据在 request body里面。上面两种情况适合于数据不放在request body里面的。

tomcat应该是类似的。

参考https://stackoverflow.com/questions/36872540/spring-boot-rest-service-form-too-large

以上这篇SpringBoot http post请求数据大小设置操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持云海天教程。

原文链接:https://blog.csdn.net/las723/article/details/92663921

springboot调整请求头大小_SpringBoot http post请求数据大小设置操作相关推荐

  1. request设置请求头_收藏 Scrapy框架各组件详细设置

    今天说一下Scrapy框架各组件的详细设置. 关于Scrapy Scrapy是纯Python语言实现的爬虫框架,简单.易用.拓展性高是其主要特点.这里不过多介绍Scrapy的基本知识点,主要针对其高拓 ...

  2. java 过滤http请求头_JAVAWEB开发实现对请求头、请求参数的过滤

    1.服务器容器取得客户端发送的参数都是通过HttpServletRequest来获取的,HttpServletRequest存在如下三种获取参数的方法: getParameter(name),返回单个 ...

  3. 学习AJAX必知必会(2)~Ajax基本使用,设置请求行、请求体、请求头,服务端响应JSON数据

    一.Ajax的基本使用 1.核心对象 XMLHttpRequest,AJAX 的所有操作都是通过该对象进行的. 2.发送ajax请求(4个步骤): 创建xhr对象,然后open方法初始化,设置请求方式 ...

  4. php 打印请求头,PHP获取当前所有请求头信息

    在开发借口满天飞的现在,我们经常要写接口.而接口的连接大部分都依赖HTTP.在PHP中我比较熟悉的是用curl方法去写HTTP请求.当然,这是发送HTTP请求的. 今天我要讲的是我们作为验证方,接收H ...

  5. mysql 查看数据表大小_关于MySQL 查询表数据大小的总结

    一:关于MySQL表数据大小 我们知道mysql存储数据文件一般使用表空间存储 当mysql使用innodb存储引擎的时候,mysql使用表存储数据分为共享表空间和独享表空间两种方式 ·共享表空间:I ...

  6. 【mysql表数据的大小】关于MySQL 查询表数据大小的总结

    一:关于mysql表数据大小 我们知道mysql存储数据文件一般使用表空间存储  当mysql使用innodb存储引擎的时候,mysql使用表存储数据分为共享表空间和独享表空间两种方式  ·共享表空间 ...

  7. h5获取http请求头_React 前端获取http请求头信息

    背景: 前端通过react渲染页面,使用了react-slingshot,相当于是前端跑在一个node服务上面 需求: 需要通过客户端通过HTTP请求传递来的参数(header里放了token)进行用 ...

  8. OKHTTP系列(九)---http请求头(header)作用

    前言 在项目开发中,网络请求是必不可少的 ,在http方面的知识学习也是不能拉下的,这里就做一波http请求头的记录. Header:请求头个别参数和描述 Header 解释 示例 Accept 指定 ...

  9. Python爬虫伪装,请求头User-Agent池,和代理IP池搭建使用

    一.前言 在使用爬虫的时候,很多网站都有一定的反爬措施,甚至在爬取大量的数据或者频繁地访问该网站多次时还可能面临ip被禁,所以这个时候我们通常就可以找一些代理ip,和不用的浏览器来继续爬虫测试.下面就 ...

最新文章

  1. 特殊标记字段(#)实时富文本显示
  2. linux 密码记录文件 .netrc 简介
  3. 【Android 插件化】插件化简介 ( 组件化与插件化 )
  4. python去掉数字最后的零_python – 如何消除额外的负号,将数字四舍五入为零时,以numpy为单位?...
  5. 蓝牙耳机测试用例_移动端测试用例设计总结,这些你得懂!
  6. 阿里云PolarDB论文入选数据库顶会SIGMOD2021 最新一代架构领先世界
  7. PowerDesigner导入SQL脚本
  8. 第一次使用最新开发的在线编辑器讲课记录笔记
  9. jboss调jvm参数_在同一台机器上启动多个JBoss A-MQ JVM
  10. java实现社交平台_GitHub - akpaul9527/symphony: 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台。...
  11. Python 数据科学手册 5.8 决策树和随机森林
  12. erp系统是什么软件
  13. HTML5实现的圆角框
  14. 新版linux系统主机最低配置,Linux系统初始配置标准化
  15. 拓扑次序(Topological Order)
  16. linux socket 程序被ctrl+c或者异常终止,提示:bind error:Address already in use,解决办法...
  17. 华为智慧屏跟Android,华为智慧屏全力打造智慧生活体验 “智慧屏”时代来临
  18. 代码格式化工具:pretter
  19. 支付宝密钥及文件生成方式
  20. 我的世界手机版javaui材质包_我的世界:史蒂夫都有皮肤,存档也想换新装,这4种材质包很适合...

热门文章

  1. 空间权重矩阵与相关性检验(Stata)
  2. 网页导入3D模型-obj/mtl文件
  3. 主编编辑器如何插入动图?
  4. SQL中一些实用的快捷键
  5. linux笔记(第三周)
  6. typedef——用法总结
  7. mmo中匹配机制的思考与实现
  8. python批量pdf转word_Python:PDF批量转Worde+PDF图片快速提取(附源代码)-Go语言中文社区...
  9. selenium优缺点_Selenium测试自动化工具的优缺点
  10. Wargames学习笔记--Bandit