Java HTTP/2服务器套接字

Jon*_*s N 8 java sockets http2 server

我想让服务器套接字在Java中用于HTTP/2,最好是TLS/https.

我有一个TLS服务器套接字工作正常,但浏览器只会说HTTP/1.1.如果我理解正确,您需要ALPN来获取HTTP/2浏览器以连接到您的TLS套接字并开始在其上运行HTTP/2; 浏览器不会要求在https上升级到HTTP/2.到目前为止,Java8似乎没有做ALPN.也许还有其他方法来强制浏览器做HTTP/2,至少是非TLS.

那么,有谁知道如何为HTTP/2创建Java服务器套接字?

sbo*_*det 12

Java至少在JDK 9之前不会获得ALPN,这将定于2016年底或2017年.

同时,你可以使用JettyALPN实现,或者更好的是,直接使用Jetty(或其他服务器),而不是使用ServerSocket进行自己的HTTP/2实现.

[免责声明,我是Jetty提交者] Jetty 9.3非常支持HTTP/2,包括HTTP/2推送.

  • @chrylis我非常了解Jonas N,我也发现这个页面正在寻找一种方法来使我的web服务器支持HTTP/2,因为它可以很有趣,你也可以从中学到很多关于HTTP的工作原理等等.但无论如何感谢Jetty的ALPN实施信息! (3认同)