一、问题回顾
如果application.properties文件中配置了
#项目路径
server.servlet.context-path=/pear-cache-service
则feignclient调用404
二、原因分析
当项目中配置了相当于配置了server.servlet.context-path,服务的根路径,若正常的rest请求的话,请求的url就是http://192.168.4.82:2222/pear-cache-service/v1/xxx/xxx
再来看我们配的feignclient接口:
配置的path中并没有根路径,这样feignclient在生成http请求时,路径就是http://192.168.4.82:2222/v1/xxx/xxx,并没有项目根路径。所以调用不通;
三、解决方案
- 去掉application.properties文件中server.servlet.context-path配置
- 在feignclient的接口中,@FeignClient注解中,path属性增加项目根路径配置,如下图:
over!!!