feign.FeignException$NotFound: status 404 reading

在项目中集成feign踩了好多坑,特此记录一下

如题:

     百度搜到好多解决方案,没一个是对的!

解决方案:

1.检查注解以及添加日志

消费者服务:添加@EnableFeignClients注解,pom

        
            org.springframework.cloud
            spring-cloud-starter-openfeign
        

 2.配置项

 这里的name指定的是实例名:

@FeignClient(name = "eshop-server", configuration = FeignConfiguration.class)
@Service
public interface BannerFeignClient {
    @RequestLine("GET  /picchealth/eshop/bannerser/list")
    Object list();
}

 这里我加了日志打印:

@Configuration
public class FeignConfiguration {
  /**
   * 将契约改为feign原生的默认契约。这样就可以使用feign自带的注解了。
   * @return 默认的feign契约
   */
  @Bean
  public Contract feignContract() {
    return new Contract.Default();
  }
  @Bean
  Logger.Level feignLoggerlevel(){
    return Logger.Level.FULL;
  }
}

3.配置日志输出(很重要) 

logging:
  level:
    com.XXX.feign.BannerFeignClient: debug

最后一步:

一定要看编译环境是否把类和实体编译过来,我就是没看,即使多次clean,package也没用!这个绝对是idea或者系统bug

feign.FeignException$NotFound: status 404 reading_第1张图片

你可能感兴趣的:(SpingBoot)