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以上。
02編寫介面使用註解來操作Feign如何傳送http請求。
03在main方法中呼叫Feign.bulider()指定請求uri並且呼叫介面中的方法,最終在控制檯列印結果返回值。
(二)Feign介面註解
在定義介面時,需要使用Feign介面註解定義Http請求型別、請求頭、請求體、請求引數等等。
例子1:
例子2:
(三)Feign API介紹
01target() 指定介面型別和URL地址返回介面Http代理物件,從而通過代理物件呼叫方法傳送HTTP請求。
除了target方法之外,還有一些可選方法。
如下:
02client() Feign在預設情況下使用的是JDK原生的URLConnection傳送HTTP請求。
通過client方法可配置其他HTTP客戶端。
如HttpClient、OkHttpClient、Http2Client等。
03options() 指定連線超時時長及響應超時時長,單位毫秒。
04retryer() 指定重試策略,引數分別是最小時間,最大時間,重連次數。
05encoder() decoder() 指定編碼/解碼方式預設是String。
可配置Gson、Jackson、Sax等。
06logger() logLevel() 指定日誌和日誌等級,可配置SLF4J等。
注意:
如果需要使用Jackson、SLF4J、Gson、Sax、OkHttpClient、Http2Client、HttpClient等需要匯入對應座標。
例子:
本文由檸檬班老師原創,轉載需註明出處!
想了解更多諮詢的同學掃描下方二維碼,可以加Q群領取學習資料:753665853備註:CSDN