赞
踩
工作中都是使用公司springCloud二次开发封装好的feign,原生的好久没复习,很多都忘记了。
背景:
服务生产者、服务消费者通过feign进行远程调用
1、注册中心-Eureka
2、单元测试order服务时候报错,服务找不到路由
2.0、服务调用链
通过interface的feign客户端,直接调用interface的实现(公司目前也是使用的这种方式)。需要调用服务的地方,引入这个服务的interface的依赖即可
2.1、报错堆栈
Caused by: java.net.UnknownHostException
2.2、处理办法
通过ip直接访问
3、服务调用出现404
两种原因:1、feign调入服务出现问题;2、feign调用玩之后,出来时候有问题。
尝试一:service的头部要加上@RequestMapping.
一处理完之后,feign可以进入到被调用的服务,但是还是报上面的404。
现象:
这个时候应该想到是返回出来的问题。返回信息的问题,然后在方法上加上@ResponseBody注解,返回json数据格式
(暂时不知何原因,有机会研究下源码)
4、远程调用服务报错405
对应的feign调用客户端方法参数前需要加上@RequestParam注解
5、总结:微服务间的调用,可以先单测完毕各个的服务,处理完对应的问题,再进行服务间调用开发。不然发现问题再返回来排查还是比较耗费时间的
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。