Feign 服务间的调用

Posted qin1993

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Feign 服务间的调用相关的知识,希望对你有一定的参考价值。

Feign是简化Java HTTP客户端开发的工具(java-to-httpclient-binder),它的灵感来自于Retrofit、JAXRS-2.0和WebSocket。Feign的初衷是降低统一绑定Denominator到HTTP API的复杂度,不区分是否为restful。
 
添加依赖 
<dependency> 
    <groupId>org.springframework.cloud</groupId> 
    <artifactId>spring‐cloud‐starter‐openfeign</artifactId> 
</dependency>

启动类添加注解 

  @EnableDiscoveryClient

   @EnableFeignClients

创建client包 

  创建接口 

@FeignClient("API‐base") //从哪个服务中调用功能 ,注意 里面的名称与被调用的服务名保持一致,并且不能包含下划线
public interface LabelClient {
@RequestMapping(value="/test/{id}", method = RequestMethod.GET) //@RequestMapping注解用于对被调用的微服务进行地址映射。注意 @PathVariable注解一定要指定参数名称,否则出错
public Result findById(@PathVariable("id") String id); }

调用 

@Autowired 
private LabelClient labelClient; 
@RequestMapping(value
= "/test/{testid}") public Result findById(@PathVariable String testid){   Result result = labelClient.findById(labelid);
  return result;
}

feign集成了负载均衡 

 

 

 

以上是关于Feign 服务间的调用的主要内容,如果未能解决你的问题,请参考以下文章

多服务间的调用

多服务间的调用

SpringCloud中Feign服务调用请求方式及参数总结

OpenFeign

Spring6的新特性,正式“抛弃”feign了

feign实现服务间的负载均衡