没有ALPN的

时间:2017-05-30 09:18:59

标签: java netty okhttp embedded-jetty http2

Java {2}客户端实现list。我找到了Jetty,Netty和OkHttp code examples,看起来他们都需要包含特定版本的ALPN library,具体取决于安装的jdk。我不喜欢它,因为当你不是该项目的唯一开发者时会遇到麻烦。

我需要查询https个网址。问题是:是否有任何HTTP / 2客户端实现不使用ALPN?欢迎使用代码示例。谢谢!

1 个答案:

答案 0 :(得分:1)

OkHttp在Java 9 beta上没有任何特殊的alpn-boot jar,这是自动的。在未来,OkHttp有望也支持https://github.com/google/conscrypt

我相信Jetty和Netty都支持HTTP / 2先验知识(没有NPN / ALPN)。

e.g。码头

https://github.com/eclipse/jetty.project/blob/0c8273f2ca1f9bf2064cd9c4c939d2546443f759/jetty-http2/http2-http-client-transport/src/test/java/org/eclipse/jetty/http2/client/http/DirectHTTP2OverTLSTest.java#L86

    HttpClientTransportOverHTTP2 transport = new HttpClientTransportOverHTTP2(new HTTP2Client());
    transport.setUseALPN(false);
    client = new HttpClient(transport, newSslContextFactory());

我相信如果你使用HttpToHttp2ConnectionHandler,它可以运行