手记

配置Feign

导入依赖,版本由spring cloud统一管理,不许配置

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

新建接口来调用服务

该服务的名称

@FeignClient(name = "user-center")

调用该服务的接口及请求方式

 @GetMapping("/users/{id}")
@FeignClient(name = "user-center")
public interface UserCenterFeignClient {
    /**
     * 当调用findById时会构造http://user-center/users/{id}
     * @param id
     * @return
     */
    @GetMapping("/users/{id}")
    UserDTO findUserById(@PathVariable Integer id);


当需要传多个参数

@SpringQueryMap

get请求需要用到该注解,post以及其他请求写法不变

@FeignClient(name = "user-center")
public interface TestUserCenterFeignClient {
    @GetMapping("/q")
    UserDTO query(@SpringQueryMap UserDTO userDTO);
}


# 开启feign的日志打印(细粒度配置)
# java代码形式
logging:
  level:
    com.itmuch.usercenter.feignClient.UserCenterFeignClient: debug
# 配置文件形式(建议)
feign:
  client:
    config:
      default:(全局配置)
        LoggerLevel: full
    # 想要调用的微服务名称
    # user-center:(细粒度配置)
    #  LoggerLevel: full



0人推荐
随时随地看视频
慕课网APP