我可以在没有ALPN支持的情况下实现http/2服务器吗?

Zac*_*ack 3 http2 http2-lawyers

这样,客户端可以在没有ALPN的情况下连接服务器并使用http/2默认值.

那可能吗?

sbo*_*det 6

是的,这是可能的,但条件是严格的.

截至目前,浏览器不会为HTTP/2实现明文通信,因此如果您使用浏览器,则问题的答案是否定的:如果您希望浏览器能够连接,则必须使用ALPN支持部署服务器.

另一方面,其他客户端(如Java客户端)可能能够使用明文HTTP/2连接到服务器,因此对于这些类型的客户端,您的问题的答案是肯定的:您可以部署HTTP/2服务器而不使用ALPN支持.

码头项目【免责声明,我的提交]实现了支持两个场景在网络服务器和servlet容器:您可以启用ALPN为TLS(SSL)的HTTP/2的沟通,让浏览器将能够连接,而且还可以启用如此处所解释的明文HTTP/2通信.另请参阅Jetty HTTP/2文档.