fegin使用psot调用application/x-www-form-urlencoded类型请求传参414,413参数缺失错误等问题

问题描述:
第三方调用或者调用其他服务时,明确要求使用application/x-www-form-urlencoded类型请求,并且要求参数放入请求body中
其中 服务器返回414,413都是因为参数直接拼接到请求url的后面,参考get请求方式,https://editor.youkuaiyun.com/md?not_checkout=1&spm=1&articleId=142519179

调试建议:在fegin请求时要开启调用日志方便问题排查

解决方案:

1、服务器修改接收参数的大小,一般调整nginx或者网关类的前置配置,但是调大后会影响服务器性能,一般情况对方也不会理会这种解决方式。治标不治本

2、调整参数从url放入请求体中

正常的请求使用@RequestParam传参,PostMapping设置application/x-www-form-urlencoded

@RequestParam传参格式在fegin调用的时候会自动拼接到url上去

数据量小时如所谓,如果你的参数特别大比如说超过8k服务器就会报错414,413等错误

@FeignClient(value = "startWorkflow2",url = "")
@Component
public interface StartWorkflow2Proxy {
    
    @PostMapping(value = "",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
    @ResponseBody
    JSONObject startW
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值