【发布时间】:2020-01-26 16:02:50
【问题描述】:
遵循启用 HTTP/2 的 Jetty 文档,
我到达了下一个步骤,
2015-06-17 14:16:12.549:INFO:oejs.ServerConnector:main: 开始 ServerConnector@6f32cd1e{HTTP/1.1,[http/1.1, h2c]}{0.0.0.0:8080}
来自文档,
目前没有主流浏览器支持纯文本 HTTP/2,所以 8080 port 将只能在 特定客户端 上使用 HTTP/2(例如 curl) 使用升级机制或假设 HTTP/2。
文档中提到了“特定客户端”,但我可以使用什么客户端来克服这个问题?我试过okHttp和apache-httpclient,okHttp不支持升级机制(AFAIK,如果不是这样就好了),apache-httpClient不支持h2。
我基本上需要从我的程序向这个端点发出 GET/POST 请求(显然,使用 HTTP/2)。
简单来说,请推荐任何支持非加密http/2(h2c)的Java客户端
谢谢!
【问题讨论】:
-
你还需要在这个端口上支持 HTTP/1 吗?
-
是...支持使用相同端点的其他服务
-
您的客户端中支持非加密http/2的功能称为
h2c,请查找。 -
@JoakimErdfelt 我找不到这样的 Java 客户端。这就是这个问题的目的。你用更好的方式解释了我的问题
-
> apache-httpClient 不支持 h2:此语句不正确。
标签: java-8 jetty okhttp http2 apache-httpclient-5.x