HTTP / 2客户端请求的多个文件请求

时间:2015-07-30 17:16:13

标签: httprequest http2

HTTP / 2中是否有任何方法或标题允许客户端专门请求从服务器的单个请求中检索多个资源,并与任何支持服务器一起开箱即用?或者是在客户端可以使用的服务器上设计自定义API的唯一解决方案吗?

2 个答案:

答案 0 :(得分:1)

回答你的问题:不。

但是,根据浏览器的智能程度,发出多个HTTP / 2请求的开销很小。首先,您的标题将被压缩,因此在URI本身的字节之上(无论如何您需要发送),每个请求可能会有大约60个字节的开销,可能更少。从那时起,HTTP / 2规范中没有要求HTTP / 2帧在不同的TCP数据包(或SSL记录)中传播,因此您的浏览器可以自由地收集几个HEADER帧,发起不同的请求并将它们一起发送...... 。即使您的浏览器没有这样做,Nagle的算法也有可能触发并通过网络将它们一起发送到一起。兼容的HTTP / 2服务器应该处理串联的标头帧,这些帧甚至可以免于流量控制。

创建自定义API仍然会有一些开销,但我不确定是否值得这么麻烦。

答案 1 :(得分:0)

在撰写本文时,我了解fetch努力和streams努力,但我不知道这两项努力究竟是如何考虑HTTP / 2协议功能的

Jetty项目提供Java HTTP/2 client API