使用Http / 2从javascript进行api调用

时间:2016-08-12 15:38:17

标签: javascript xmlhttprequest http2

我知道大多数浏览器都支持http / 2来加载页面,但这是否意味着我可以在使用XmlHttpRequest进行api调用时利用它?

更具体地说,我的问题是,如果我使用XmlHttpRequest进行2次调用来获取数据,是否确保它们都使用下面的相同tcp连接?我读过的任何文档都没有指明关于httpd支持XmlHttpRequest的任何内容,或者我如何显式打开http2连接,利用它来做一些调用,然后关闭连接。

java中的okHttp,jetty和其他库提供了支持它的客户端库。但是javascript支持还不清楚。

1 个答案:

答案 0 :(得分:5)

当浏览器和服务器都支持HTTP / 2时,它将用于来自浏览器的所有呼叫 - 包括XHR。您无需在javascript中执行任何特殊操作即可启用此功能。这是关于HTTP / 2实现方式的一个重要方面。

如果您正在询问如何确保连接处于打开状态,因为您要重用连接,那么http/2 spec会说:

  

HTTP / 2连接是持久的。为了获得最佳性能,它是   预计客户端不会关闭连接   确定不需要与服务器进一步通信   (例如,当用户离开特定网页时)   或直到服务器关闭连接。

     

...

     

鼓励服务器保持打开的连接   可能但允许在必要时终止空闲连接。