OpenFeign( 二 )


2.4 在服务消费方的控制层通过接口调用服务Author:呆萌老师 QQ:2398779723 微信:it_daimeng

2.5 测试

2.6 错误测试1.如果传递的参数为对象或其它复杂类型时,默认的请求方式是Post 。如果我们在服务提供方这里设置为Get,会报错 。

结论:
为什么FeignClient发起的GetMapping会报错,是因为FeignClient最后是用HttpURLConnectiion发起的网络连接,在发起的过程中,Connection会判断其自身的body是否为空,如果不为空,则将 GET Method 转换为 POST Method 。
按照上面的GET会转POST的理论,所以我们FeignClient调用端写的是GetMapping,参数不贴注解,只要服务端的生产者是PSOT请求加@RequestBody接收,那么就能正确接收并响应数据 。
2.FeignClient接口中的@PathVariable和@RequestParam 中的value不能省,否则会报语法错误 。
但服务提供者和服务消费者对应的控制层方法中可以

经验总结扩展阅读