Javascript 当前的XHR实现是否利用了HTTP/2?
这可能只是突出了我的一些误解,但我很好奇: 如果您有一个HTTP/2服务器正在运行,并且希望在浏览器中向服务器发出XHR请求,那么XHR是否会自动利用标头中的性能优化以及它提供的性能优化Javascript 当前的XHR实现是否利用了HTTP/2?,javascript,xmlhttprequest,http2,Javascript,Xmlhttprequest,Http2,这可能只是突出了我的一些误解,但我很好奇: 如果您有一个HTTP/2服务器正在运行,并且希望在浏览器中向服务器发出XHR请求,那么XHR是否会自动利用标头中的性能优化以及它提供的性能优化 或者它会忽略该功能,并作为HTTP请求进行操作?如果是这样,我们可以做些什么来在我们的请求中使用新的优化?您不需要做任何事情。如果服务器支持HTTP/2,XHR将使用它。收割台压缩等将自动启动 测试它: 在Chrome中打开HTTP/2网站。你可以用我们的 打开Devtools面板(F12),然后打开网络面板
或者它会忽略该功能,并作为HTTP请求进行操作?如果是这样,我们可以做些什么来在我们的请求中使用新的优化?您不需要做任何事情。如果服务器支持HTTP/2,XHR将使用它。收割台压缩等将自动启动 测试它:
- 在Chrome中打开HTTP/2网站。你可以用我们的
- 打开Devtools面板(F12),然后打开网络面板,然后单击XHR。右键单击标题行,并确保启用了“协议”列
- 您应该在上述列中看到“h2”(在我们的例子中,AngularJS正在通过XHR加载模板include)
- 此时,请注意服务器推送了XHR请求。推送响应的信号是“临时头”而不是请求头,以及异常小的“下载”和“等待”时间。我们甚至在响应中添加了一个额外的头(x-shimmercat-note:pushedstream)。浏览器采用了此请求,因此XHR请求不仅将使用HTTP/2(如果可用),而且在某些情况下还可以使用推送的资源
XHR.onprogress
可以用来接收推送的资源。