Feign ,三步搞定HTTP请求

(一)三步搞定Http请求

今天要给大家介绍的主角是Feign 。

Feign是一个受到Retrofit,JAXRS-2.0和WebSocket启发的Java到HTTP客户端绑定器。 

Feign的第一个目标是降低HTTP API的复杂性。

官网:https://github.com/OpenFeign/feign

01 首先导入maven坐标,我们选择feign-jackson集成jackson解析json。

10.X版本需要JDK1.8以上。

Feign ,三步搞定HTTP请求

02 编写接口使用注解来操作Feign如何发送http请求。

Feign ,三步搞定HTTP请求

03 在main方法中调用Feign.bulider()指定请求uri并且调用接口中的方法,最终在控制台打印结果返回值。

Feign ,三步搞定HTTP请求

(二)Feign接口注解

在定义接口时,需要使用Feign接口注解定义Http请求类型、请求头、请求体、请求参数等等。

Feign ,三步搞定HTTP请求

例子1:

Feign ,三步搞定HTTP请求

例子2:

Feign ,三步搞定HTTP请求

(三)Feign API介绍

01 target() 指定接口类型和URL地址返回接口Http代理对象,从而通过代理对象调用方法发送HTTP请求。

除了target方法之外,还有一些可选方法。

如下:

02 client() Feign在默认情况下使用的是JDK原生的URLConnection发送HTTP请求。

通过client方法可配置其他HTTP客户端。

如HttpClient、OkHttpClient、Http2Client等。

03 options() 指定连接超时时长及响应超时时长,单位毫秒。

04 retryer() 指定重试策略,参数分别是最小时间,最大时间,重连次数。

05 encoder() decoder() 指定编码/解码方式默认是String。

可配置Gson、Jackson、Sax等。

06 logger() logLevel() 指定日志和日志等级,可配置SLF4J等。


注意:

如果需要使用Jackson、SLF4J、Gson、Sax、OkHttpClient、Http2Client、HttpClient等需要导入对应坐标。

例子:

Feign ,三步搞定HTTP请求

本文由柠檬班老师原创,转载需注明出处!

想了解更多咨询的同学扫描下方二维码,可以加Q群领取学习资料:753665853  备注:CSDN  

Feign ,三步搞定HTTP请求