mal*_*jun 2 firefox jetty http2
我正在学习 HTTP2 并使用 jetty 开发了一个 POC,它在 chrome 中运行良好。
但是,当我在 firefox 中点击相同的 URL 时,我的 HTTP2 URL 请求得到了空白页面,异常显示“您尝试查看的页面无法显示,因为无法验证接收到的数据的真实性。” 四处搜索后发现在firefox中我必须从“about:config”启用network.http.spdy.enabled.http2。
我的问题是,如果浏览器不支持 HTTP2,服务器或浏览器端是否有任何机制可以回退到 HTTP1。
如果客户端不支持 HTTP/2,Jetty确实支持回退到 HTTP/1.1。
在不查看服务器端代码的情况下,我猜测您HttpConnectionFactory在配置 时没有将 加为工厂之一ServerConnector,因此您不会得到回退。
另外,请记住,回退从基于 TLS 的 HTTP/2 到基于 TLS 的 HTTP/1.1;换句话说,无论您使用 HTTP/2 还是 HTTP/1.1,您都在“https”领域,并且您将留在那里。因此,您需要有适当的证书才能进行回退:您不能从加密的 HTTP/2 到明文的 HTTP/1.1。
这个例子向你展示了如何正确设置一个可用的 HTTP/2 服务器并回退到 HTTP/1.1。
| 归档时间: |
|
| 查看次数: |
3203 次 |
| 最近记录: |