• 9-8 Feign特性之Configuration


    做局部性的自定义configuration

    feign提供给我们的可配置的东西

    这是决定我们为什么之前可以使用SpringMVC来服务调用的原因。因为feign默认提供给我们的就是SpringMvcContract.
    这里我们来演示如果我们不用SpringMvc的Contract那么具体怎么去操作?

    自定义Feign的configuration

    configuration不能在Application的作用域之内,如果在作用域内它默认就会把它加载进来,会出问题。

    @SpringBootApplication 默认扫描的就是同级别和子目录

    我们consumer同级别建一个包feignconf

    application管的就是consumer包下的以及它的子包

    我们在feignconf下加载的就是我们额外的配置。



    我们去改变contract,选择feign包下的

    使用feign默认提供给我们的集成方式,

    上面加个@Bean注解

    启动eurekaServer、provider和consumer服务
    访问consumer的接口地址

    ProviderApi加载我们刚才写的配置类

    重启consumer服务就报错了:

    Caused by: java.lang.IllegalStateException: Method ProviderApi#providerPost(String,String,UserModel) not annotated with HTTP method type (ex. GET, POST)

    默认的配置不能识别我们当前写的语法

    feign的写法演示


    演示下feign默认提供的方式。这是feign的写法,写法非常的奇怪。

    把原来的两个方法,invokerProviderController和providerPost都注释掉。

    @RequestLine("GET /sayhello?message={message}")
    String invokerProviderController(@Param("message") String message);






    ProviderAPIImpl类里,这里也注释掉

    重启服务,也可以正常的访问。这是用feign自己的注解访问的方式。

    http://localhost:7201/sayhello/feign?message=imooc

    总结




    这里我们演示了默认的和SpringMvc的Contract

    进入Default方法

    这里就是Contract里面有个Default

    以上就是自定义配置给大家讲的内容

    结束

  • 相关阅读:
    luogu P3704 [SDOI2017]数字表格
    「雅礼集训 2018 Day4」Magic(分治NTT)
    「清华集训 2017」小 Y 和恐怖的奴隶主
    [WC2019]数树(树形dp+多项式exp)
    「FJWC2020Day5-zzq」lg (容斥)
    BoundedOptimization TopCoder
    MapGuessing TopCoder
    线性递推(Berlekamp-Massey 算法)
    杜教筛小记
    「余姚中学 2019 联测 Day 6」解码
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/12845784.html
Copyright © 2020-2023  润新知