feign.FeignException$NotFound: status 404 reading

在項目中集成feign踩了好多坑,特此記錄一下

如題:

     百度搜到好多解決方案,沒一個是對的!

解決方案:

1.檢查註解以及添加日誌

消費者服務:添加@EnableFeignClients註解,pom

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>

 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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章