作用:
声明式的web服务客户端,或叫做声明式REST客户端,它让编写web服务客户端变得简单。
步骤:
创建一个接口并注解它。它支持spring MVC的注解,spring cloud openFeign,可以和Eureka和ribbon配合使用,可以实现负载均衡的http客户端。
#在需要使用openfeign的项目中添加openfeign的依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
<version>3.1.3</version>
</dependency>
添加配置文件
# 激活Sentinel对Feign的支持
feign:
sentinel:
enabled: true
启动类添加注解
@EnableFeignClients
4. 创建接收服务者的接口
OpenFeign里边的value就是你服务者对外开放的名称,这个必须一致
# OpenFeign里边的接口以及你的url一定要与你服务者里边的信息一致
方法要求:
返回值:要对应
方法名:随意
参数:要对应
方法上添加SpringMVC注解
# 在openFeign中方法参数前如果没有注解,默认添加@RequestBody注解,里最多只能在在一个不带注解的参数.
字普通表单参数必须添加@Requestparam注解。如果变量名和参数名称对应可以不写name
服务者
订阅者
发布者
订阅者
#注:应该是openfeign接口的实体类的名称可以与发布者实体类的名称不一致,但是实体类的内容必须保持一致
OpenFegin的控制器
如果只是有一个简单的传参方式,而且发布者的参数没有使用RequestBody,也没有使用PathVariable,就代表只是一个简单的传值,但是在openfeign的接口中必须添加@RequestParam
因为openfeign自带会默认添加一个RequestBody注解,如果不加就直接找不到服务者的接口