feign 第一次调用超时_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以上。

bca7d6fafee6f54d96b7277ed5ba64bc.png

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

93dba4e9be799410b958c9a974c0baf2.png

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

4df4b1f688ae8f3681b24f5526bad841.png

Feign接口注解

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

70a16069d2d28235cb3a65ec81f65492.png

例子1:

f6b3e73687a668dd1a18081f17ded8dd.png

例子2:

ea8a9f32fe903034b84be244aaacf0d6.png

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等需要导入对应坐标。

例子:

336db42b296421dac3be1f2f6dd35340.png

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

64d0f23f2da75e2e389903bada62ed68.png

转发到朋友圈是最高的赞赏

关注柠檬班微信公众号,获取最新技术文章

让软件测试学习变得更简单!

64d0f23f2da75e2e389903bada62ed68.png

柠檬班软件测试5周年

星星班主任生活纪录片

想知道星星的一天是怎么度过的吗

点击视频就知道啦

7fd526823473860e8fb2aa626d94f684.png

64d0f23f2da75e2e389903bada62ed68.png

柠檬班5周年庆

扫码报名

不仅可以前往现场

还可获得礼品呦

48602785934b608663a724a399b13a49.png

扫码报名

a55f21649240f8e9156b92df1ad0919a.gif

点击“阅读原文”,即可购买福袋

点一下在看再走吧

6b8d0d379f23f3e65987f6d5056d1cb9.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值