如何在okhttp或java 11 httpclient之类的http2客户端中获取Max_concurrent_streams的数量和流ID

时间:2019-11-26 05:11:35

标签: okhttp http2

我对http2具有以下要求。 1)在启动客户端HTTP连接时,我应该能够设置http2服务器支持的Max_concurrent_streams,并相应地处理故障情况。

2)获取流的流ID并分配优先级。

我检查了okhttp客户端和Java11 http客户端。但是找不到任何方法可以达到同样的效果。

请让我知道有什么方法可以实现这些目标。

1 个答案:

答案 0 :(得分:2)

如果您需要处理HTTP / 2协议的底层细节,则可以使用JettyHTTP2Client

请注意,服务器决定了它可以支持的并发流的最大数量,客户端无法修改该值。

客户端可以将其支持的并发流的最大数量发送到服务器,但是该数量是指服务器可以发送给客户端的推送的流。

使用HTTP2Client API,您将可以轻松访问流id,并能够将PRIORITY帧发送到服务器以为请求分配(和修改)优先级。< / p>

This是如何使用HTTP2Client的简单示例。

您可以在this directory中找到更多示例。