广告
返回顶部
首页 > 资讯 > 精选 >feign参数过多导致调用失败怎么办
  • 179
分享到

feign参数过多导致调用失败怎么办

2023-06-29 11:06:06 179人浏览 泡泡鱼
摘要

这篇文章主要介绍feign参数过多导致调用失败怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!feign参数过多调用失败错误信息JSON parse error: Illegal character ((CTRL

这篇文章主要介绍feign参数过多导致调用失败怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

feign参数过多调用失败

错误信息

JSON parse error: Illegal character ((CTRL-CHAR, code 31)): only regular white space (\r, \n, \t) is allowed between tokens…

通过feign去调用其他服务的时候报上面的错误了,当传入的参数比较少的时候并没有错误,但是传入参数一多就自动走hystrix熔断器了。

通过层层排查

报这个错误的原因是因为

JSON 解析错误:非法字符((CTRL-CHAR,代码 31)):令牌之间只允许使用常规空格(\r、\n、\t)...

json解析错误了,开始想的是用一个实体类去接收对面返回的参数,所以报这个错误,好吧,那我用一个object去接收吧,

但是结果显示还是照样会走熔断器,接着就用map去接收返回参数,还是一样,后来去百度查了说是要配置feign,取消压缩,

试了,没用。最后去百度一下说是因为传输的数据被压缩了,只要加入feign的配置去除压缩限制就行了。可是还是没用,无奈之下只能请教自己的同事。

给出了两种解决办法

第一种:将被调用方的返回数据缩小(我就是用的这种方法,但是这个方法不是长久之计)

第二种:使用原生的Http去请求对面的api,网上有很多的工具包。

feign多参数传递踩坑记录

真的是头大的一天,看了网上好多feign传参的博客,半天找不到怎么处理又传递基本类型又传递实体类的,赶紧在这写下来,可恶

场景

假如现在有一个分页的请求,前端给了我们消费端的参数有:

  • int类型的pageNum,表示分页页码

  • int类型的pageSize,表示每页数据的条数

  • 实体类的相关参数

然后我们用的是thymeleaf,所以需要一个model给前端返回分页相关参数

现在的问题是

我要把pageNum、pageSize和实体类传递给服务端,让他给我分页结果的相关参数

解决方案

1. 消费端controller:

feign参数过多导致调用失败怎么办

这里的参数该怎么接收怎么接收

2. 消费端feign接口对应方法:

feign参数过多导致调用失败怎么办

  • 给两个int类型的数据加上@RequestParam

  • 给实体类加上@RequestBody

3. 服务端controller:

feign参数过多导致调用失败怎么办

和feign接口方法一样

  • 给两个int类型的数据加上@RequestParam

  • 给实体类加上@RequestBody

终于是不会报错了xdm

以上是“feign参数过多导致调用失败怎么办”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: feign参数过多导致调用失败怎么办

本文链接: https://www.lsjlt.com/news/324696.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • feign参数过多导致调用失败怎么办
    这篇文章主要介绍feign参数过多导致调用失败怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!feign参数过多调用失败错误信息JSON parse error: Illegal character ((CTRL...
    99+
    2023-06-29
  • feign参数过多导致调用失败的解决方案
    目录feign参数过多调用失败错误信息报这个错误的原因是因为给出了两种解决办法feign多参数传递踩坑记录场景现在的问题是解决方案feign参数过多调用失败 错误信息 JSON pa...
    99+
    2022-11-13
  • 安装mysql远程过程调用失败怎么办
    mysql远程过程调用失败的解决方法方法一:首先,打开控制板面,在控制板面中点击进入“卸载程序”选项;进入卸载程序页面后,在程序列表中查找到“Microsoft SQL Server 2013(2012) Express LocalDB”选...
    99+
    2022-10-10
  • 数据库中因删除归档日志导致备份失败怎么办
    这篇文章将为大家详细讲解有关数据库中因删除归档日志导致备份失败怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 先说明一下,目前碰到两种情...
    99+
    2022-10-18
  • 设置MySQL数据库参数不当导致应用无法连接怎么办
    本文主要给大家简单讲讲设置MySQL数据库参数不当导致应用无法连接怎么办,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望设置MySQL数据库参数不当导致应用无...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作