1. Feign简介
feign是Netflix开发的声明式,模块化的HTTP客户端。可以帮助我们更加便捷优雅的调用httoAPI。
在springCloud中,使用Fiegn非常简单,创建一个接口,并在接口上添加一些注解,代码就完成了。
springCloud对feign进行了增强,使得Feign支持了SpringMVC注解,并整合了ribbon和eureka,从而让feign使用更加方便。
2. 整合Feign
1. 添加依赖
spring-cloud-starter-feign
2. 创建接口
@FeignClient(name="server-user")
public interface UserServFeign {
@GetMapping("/a/1")
public void getUser();
}
@FeignClient注解中的server-user是一个任意的客户端名称,用于创建Ribbon负载均衡器,如果使用eureka,所以ribbon会把server-user解析成eurekaServer服务注册表中的服务。
如果不想使用eureka,可使用server.ribbon.listOfServers属性配置服务器列表
还可以使用url属性指定请求的url(url可以是完整的url或者主机名),例如:@FeignClient(name="server-user", url = "http://localhost:8080")
3. 调用
注入接口,并调用
4. 修改启动类
添加@EnableFeignClients注解
3. 自定义配置
4. 手动创建feign
5. Feign对继承的支持
6. Feign对压缩的支持

7. Feign的日志
使用: