Javascript 在angularJS中使用HTTP/2

Javascript 在angularJS中使用HTTP/2,javascript,angularjs,http2,web-performance,Javascript,Angularjs,Http2,Web Performance,当我偶然发现HTTP/2时,我正试图找到提高web应用程序性能的方法。在阅读有关它的文章时,我知道它有很多功能来提高网站性能 说到它的实现部分,我发现您只需将浏览器升级到最新版本即可使用它。因为我的浏览器已经是最新版本了,所以我看到我所有的资源——CSS、JS和HTML文件都是用HTTP/2提供的。但是,我使用angularJS进行的数据查询仍然使用HTTP/1.1。以下是我的问题 如何让数据查询使用HTTP/2协议?我必须在标题中添加额外的参数吗 HTTP/2会放弃浏览器对每个域的6个同时请求

当我偶然发现HTTP/2时,我正试图找到提高web应用程序性能的方法。在阅读有关它的文章时,我知道它有很多功能来提高网站性能

说到它的实现部分,我发现您只需将浏览器升级到最新版本即可使用它。因为我的浏览器已经是最新版本了,所以我看到我所有的资源——CSS、JS和HTML文件都是用HTTP/2提供的。但是,我使用angularJS进行的数据查询仍然使用HTTP/1.1。以下是我的问题

  • 如何让数据查询使用HTTP/2协议?我必须在标题中添加额外的参数吗

  • HTTP/2会放弃浏览器对每个域的6个同时请求的限制吗?我可以提出6个以上的并行ajax请求吗


  • 我在客户端使用angularJS。我的请求通过Cloudflare发送到Play Framework提供服务的服务器。

    如果客户端(浏览器)和Web服务器都支持HTTP/2,则将使用它。前端JavaScript中不需要任何差异-如果可以,浏览器将自动使用它

    因此,我猜您的“数据”查询与常规查询位于不同的域,并且该域不支持HTTP/2

    是的,HTTP/2极大地增加了飞行中的并行请求数量。100飞行中的“流”是一种常见的服务器设置。然而,这确实带来了所有有趣的挑战:例如,Chrome发现,当有那么多请求同时发生时,它有一些效率低下的问题需要处理,并且有一段时间一次只能处理6个HTTP/2请求。此外,一些较低优先级的请求(例如,折叠图像下方)可以更好地使用带宽,用于较高优先级的请求(例如,折叠图像上方)。HTTP/2有依赖关系和优先级的概念,但不是每个浏览器都使用它们


    这是一个非常有趣的话题。

    是的,我的数据查询位于不同的领域。我需要找出该域不支持HTTP/2的原因。非常感谢你的帮助。但是我不太清楚第二点。使用HTTP/2时,chrome的6个并行请求限制将立即消失?是的,这是因为您可以在使用HTTP/2的同一连接上发送多个请求,而您必须为多个连接打开更多连接(浏览器限制为6个)。有关此项的更多信息,请参见我的答案:。然而,虽然6限制大幅增加(通常增加到100),但它并不是完全无限的,现在可以看到其他副作用限制增加了。有关这方面的更多详细信息,您可以查看我关于这一主题的书: