版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zl386119974/article/details/80855703
1.feign client 调用端List类型用@RequestParam 服务端用 @RequestParam 接收参数
2.feign client 端参数为实体类传递用@RequestBody,服务端用@RequestBody接收参数
3. Connection refused: connect executing POST 错误时因为
很明显是最终feign执行http请求时把这个方法认定为POST,但feign client中又定义了RequestMethod.GET 或 @GetMapping,冲突导致报错
那么为什么feign会认为这个方法是post呢?
根据http协议定义是支持@RequestBody+ RequestMethod.GET的,那么具体就得看工具包实现的不同的,查看源码发现okhttp和HttpURLConnection都不支持(报错),只有httpclient支持。(默认走HttpURLConnection会报错)
我们知道只有httpclient支持@RequestBody+ RequestMethod.GET,所以我们必须满足条件走HttpClientFeignLoadBalancedConfiguration才
需要引入pom依赖
<dependency> <groupId>io.github.openfeign</groupId> <artifactId>feign-httpclient</artifactId> </dependency>
具体请查看:https://www.cnblogs.com/dennyzhangdd/p/7978454.html