现在我们项目中都已迁入spring boot和spring cloud。 服务间调用现在都改成feign的调用方式,但是上次在实际使用过程中出现过:Request header is too large 的情况。

这里重现下场景:

1,调用其他服务提供方的接口
2,POST请求,传递的参数包含数据较大
3,本地联调发现报错:Request header is too large

查询一圈发现大多是建议修改tomcat中的header的最大值:

例如:server.max-http-header-size=1048576 (参考自:https://blog.csdn.net/qq_38951372/article/details/79403868

但是回头想想,这并不是治本的方法,如果下次真的传递的值超过了这个怎么办??

现在给出我的解决方案:在Feign中使用MultiValueMap作为参数的接收方,Controller无需改变。
例如:

1,Feign中修改参数定义

2,服务请求方

原因是我们使用Feign调用时,默认会将参数header中也存放一份,所以就导致了header is too large的异常,使用MultiValueMap就可以完美解决这种问题了。

Feign请求中报错:Request header is too large 的解决方案。的更多相关文章

  1. net::ERR_CONNCTION_ABORTED与http post request header is too large 错误

    开始浏览器报(net::ERR_CONNCTION_ABORTED)然后就一直找这个错误是怎么引起的,找了一圈也没有找到答案. 后来看了一下后台发出后台错http post request heade ...

  2. java.lang.IllegalArgumentException: Request header is too large

    tomcat运行项目时,有一个请求过去后,后台报这样的错java.lang.IllegalArgumentException: Request header is too large原因:请求头超过了 ...

  3. tomcat解决 java.lang.IllegalArgumentException: Request header is too large

    tomcat运行项目时,有一个请求过去后,后台报这样的错java.lang.IllegalArgumentException: Request header is too large 原因:请求头超过 ...

  4. java.lang.IllegalArgumentException: Request header is too large 解决方案

    错误描述: java.lang.IllegalArgumentException: Request header is too large 问题分析: 请求头超过了tomcat的限值.本来post请求 ...

  5. 异常处理 | java.lang.IllegalArgumentException: Request header is too large

    背景 今天在自己使用Springboot开发博客系统的时候,在浏览器点击提交markdown文件一直出现以下异常: java.lang.IllegalArgumentException: Reques ...

  6. Request header is too large

    当request url过长的时候,经常tomcat后台就会包 "Request header is too large"错误. 解决方法:修改server.xml文件,linux ...

  7. Spring boot POST 提交错误 Request header is too large

    解决方法 application.yml server: # 单位 KB max-http-header-size: 100000 java.lang.IllegalArgumentException ...

  8. Status Code: 431 Request Header Fields Too Large

    Status Code: 431 Request Header Fields Too Large    

  9. Feign Request header is too large

    Feign远程调用时数据量过大报错 看异常提示猜测Feign在请求其他服务时,将数据存在了header,导致数据量过大报错 MultiValueMap<String, String> pa ...

随机推荐

  1. 请指出document load和document ready的区别?

    共同点:这两种事件都代表的是页面文档加载时触发. 异同点: ready 事件的触发,表示文档结构已经加载完成(不包含图片等非文字媒体文件). onload 事件的触发,表示页面包含图片等文件在内的所有 ...

  2. js 数组 转为树形结构

    题目: source = [{ id: 1, pid: 0, name: 'body' }, { id: 2, pid: 1, name: 'title' }, { id: 3, pid: 2, na ...

  3. js 实现继承的6种方式(逐渐优化)

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  4. 【Shell】Linux的判断表达式:-d,-f,-e等

    文件比较运算符 表达式         说明                            案例 -e filename    如果filename存在,则为真        [ –e /et ...

  5. Mac OS使用技巧十九:Safari碉堡功能之二查看网页源代码

         由于大三下的时候选修了搜索技术.了解了网络上搜索引擎和网络爬虫的信息扒取的一些东西,后来我们做了一个比較水的东西.就是仅仅扒取了几家较大的下载站点几十个软件的评分下载量等信息,当用户输入一个 ...

  6. 第一个go的web程序;调用七牛云存储的音频api问题解决;条件搜寻文件中的内容,字符串拼接+在上一行

    package main import ( "html/template" "io" "io/ioutil" "log" ...

  7. public static List SmaDataManager.getThreads(Context context)

    public static List<TxrjThreads> getThreads(Context context) 解析获取Threads列表之要点: 1. 得到带有fail信息的th ...

  8. Linux实例安装VNC Server实现图形化访问

    引自阿里云: https://help.aliyun.com/knowledge_detail/41530.html

  9. [转]最好用的 AI 开源数据集 Top 39:NLP、语音等 6 大类

    原文链接 本文修正部分错误. 以下是精心收集的一些非常好的开放数据集,也是做 AI 研究不容错过的数据集. 标签解释 [经典]这些是在 AI 领域中非常著名.众所周知的数据集.很少有研究者或工程师没有 ...

  10. Effective Tensorflow[转]

    Effective TensorFlow Table of Contents TensorFlow Basics Understanding static and dynamic shapes Sco ...