各位 Java 大佬你们 http 客户端都用什么?

2020-08-23 10:06:26 +08:00
 changdy

用过不少 httpclient , 感觉大部分 client 细节非常多. 但其实对于后端来说,几乎所有的都是非常简单的 json 请求, 用起来颇有一种大炮打蚊子的感觉.

目前公司系统针对各自的请求对 apache httpclient 进行了非常简单的封装,但即便如此,也不具备通用性.想问下各位 V 友,你们是怎么选择 httpclient 的 , 有没有进行过二次封装

1, java 9+ 自带 httpclient(我比较喜欢这种链式调用的,但是 java8 没有)

2, apache 原生 httpclient

3, 封装过的 apache httpclient

4, OkHttp

5, Feign

6, RestTemplate

7, Retrofit

12314 次点击
所在节点    Java
69 条回复
aidoudou
2020-08-23 10:12:53 +08:00
3
wongy
2020-08-23 10:14:51 +08:00
用的是 hutool-http 工具包
coetzee
2020-08-23 10:19:03 +08:00
用的 feign,feign 默认用的 httpclient,但是我们替换成了 OK
flyfanc
2020-08-23 10:21:06 +08:00
3
zliea
2020-08-23 10:24:29 +08:00
resttemplate over httpclient/okhttp
ily433664
2020-08-23 10:36:47 +08:00
3
srx1982
2020-08-23 10:40:01 +08:00
4
chendy
2020-08-23 10:41:29 +08:00
6 ( RestTemplate )套着 2 ( HttpClient ),spring-boot 自动配置
Foxkeh
2020-08-23 10:43:11 +08:00
234567 都用, 老项目 234, 新项目 256
rockyou12
2020-08-23 10:44:47 +08:00
OkHttp 和 feign 用得多,如果写 android 会用 Retrofit 。基本不管用哪个,多少都要针对业务做封装或配置
zoharSoul
2020-08-23 10:54:56 +08:00
okhttp + retrofit
DreamSpace
2020-08-23 11:03:02 +08:00
restTemplate over okhttp
但是 restTemplate 不好做文件下载
vimfox
2020-08-23 11:08:08 +08:00
AsyncHttpClient
skypyb
2020-08-23 11:14:08 +08:00
jdk9 新增的那个 httpclient 有坑的,不让设置一些敏感的请求头, 而且你本地能跑指不定到服务器上就崩了。 我用 java11 就遇到过。 想要
要关掉这个检查还得上 jdk12 才能有这个设置
WebKit
2020-08-23 11:21:57 +08:00
okhttp
Cyron
2020-08-23 11:42:08 +08:00
简单请求 Hutool 可以
ilumer
2020-08-23 11:50:13 +08:00
feign
zhouhui
2020-08-23 11:56:39 +08:00
xuanbg
2020-08-23 12:36:57 +08:00
3 对外,5 对内
sagaxu
2020-08-23 12:47:47 +08:00
同步阻塞用 okhttp,唯一不足是不支持带 body 的 GET 请求。

异步和协程用 vertx-web-client 。

都会做些封装,但是发现也没少写很多代码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/700630

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX