springcloud使用feign调用服务时参数内容过大问题
作者:xiaobai_0316 时间:2022-08-31 11:23:26
feign调用服务时参数内容过大
场景
前端参数传入到gateway后,gateway使用feign调用服务时,传入的参数内容过大(参数常见于富文本、或者其他附属信息过多)会导致传输不过去,虽然配置可以调节内容大小,但是最大的也有上限,所以特殊处理一道。
例如该类参数:
解决方法
可新增两个redis公共方法,后续出现的都可以共用
1、设置缓存参数:
对于请求参数数量不多,但是某些请求参数过大的场景,临时将参数body缓存在redis中,通过传递缓存key(tsparamPlaceContent),在后续接口获取请求体
2、获取缓存参数:
对于请求参数过大的请求,通过传递过来的缓存key(tsparamPlaceContent),获取请求体
大致步骤就是这样,具体怎么实现,根据各个项目不同代码去实现,该种解决方案也可适用于MQ在服务之间发送消息时内容过大的问题
feign消费时,如果传入参数过长
导致feign.FeignException: status 400 reading错误
抛出异常:
feign.FeignException: status 400 reading ProjectFeignClient#getPartsByNodes(String,List)
原因:
查询时,list<integer>中有600个参数
解决办法
查询数据时,分批查,每次500左右
来源:https://blog.csdn.net/xiaobai_0316/article/details/113605565
标签:springcloud,feign,调用服务,参数
0
投稿
猜你喜欢
谈一谈Android内存泄漏问题
2023-01-29 23:23:54
Android sharedPreferences实现记住密码功能
2022-09-11 13:58:37
JVM垃圾收集器详解
2022-10-06 10:46:00
C#中循环语句:while、for、foreach的使用
2022-05-01 02:42:55
Java C++ 算法题解leetcode652寻找重复子树
2022-08-17 23:58:09
短网址的原理与生成方法(Java实现)
2022-04-14 11:29:19
Android编程之播放器MediaPlayer实现均衡器效果示例
2022-02-25 11:52:32
WPF如何自定义ProgressBar滚动条样式
2021-08-02 13:31:44
Android自定义View实现带4圆角或者2圆角的效果
2023-04-08 04:32:10
使用C语言编写基于TCP协议的Socket通讯程序实例分享
2023-07-05 03:30:03
idea中如何使用git进行版本回退详解
2022-03-24 06:28:11
Java中关于Map四种取值方式
2022-04-22 09:24:09
C#抓取网络图片保存到本地的实现方法
2023-06-28 11:35:13
C#启动外部程序的几种常用方法汇总
2022-06-21 15:13:11
Springboot如何使用filter对request body参数进行校验
2023-09-14 05:28:46
Android LayerDrawable超详细讲解
2023-12-03 16:36:30
Java和C++通过new创建的对象有何区别?
2022-02-07 10:06:10
C++链表节点的添加和删除介绍
2023-08-23 02:32:09
IDEA的默认快捷键设置与Eclipse的常用快捷键的设置方法
2023-04-09 18:32:40
SpringBoot 内置工具类的使用
2021-08-26 11:42:21