当浏览器不支持http2时,回退到http1.1

时间:2016-03-08 13:07:37

标签: firefox jetty http2

我正在学习HTTP2并使用jetty开发了一个POC,它在chrome中运行良好。

但是当我在firefox中点击相同的URL时,HTTP2 URL请求获得了空白页,但有例外说“由于无法验证接收数据的真实性,无法显示您尝试查看的页面”。 搜索后发现在firefox中我必须从“about:config”启用network.http.spdy.enabled.http2。

我的问题是,如果浏览器不支持HTTP2,服务器或浏览器端是否有任何机制可以回退到HTTP1。

1 个答案:

答案 0 :(得分:4)

如果客户端不支持HTTP / 2,

Jetty会支持回退到HTTP / 1.1。

在不查看服务器端代码的情况下,我猜您在配置HttpConnectionFactory时没有将ServerConnector添加为其中一个工厂,因此您无法获得后备

另外,请记住,回退从TLS上的HTTP / 2到TLS上的HTTP / 1.1;换句话说,你在" https"无论你使用的是HTTP / 2还是HTTP / 1.1,你都会留在那里。 因此,您需要拥有适当的证书才能实现回退:您无法从加密的HTTP / 2转到明文HTTP / 1.1。

This example向您展示如何正确设置具有回退到HTTP / 1.1的工作HTTP / 2服务器。