接上一篇,Springcloud使用feignclient远程调用服务404 ,为什么去掉context-path后,就能够调通

一、问题回顾

如果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,并没有项目根路径。所以调用不通;

三、解决方案

  1. 去掉application.properties文件中server.servlet.context-path配置
  2. 在feignclient的接口中,@FeignClient注解中,path属性增加项目根路径配置,如下图:

over!!!

原文地址:https://www.cnblogs.com/ft535535/p/9908999.html