浏览器是否在几个同步异步XMLHttpRequest上阻止JS执行?

时间:2017-01-22 11:01:06

标签: javascript ajax browser xmlhttprequest

我听说浏览器只发出有限数量的同步请求(例如2或6)。

如果我发出多个XMLHttpRequest.send(),我的JS代码会在某些时候被阻止(例如在send来电时)?

或者在浏览器队列中收集的所有请求中,只有部分请求会被发送到网络?

1 个答案:

答案 0 :(得分:2)

正确,浏览器只会并行发送一定数量的请求。但是,除非您发送同步xhr请求(您很可能不会这样做),否则您的代码将无法阻止。

当最大值达到并行请求限制后,浏览器将对其他请求进行排队,并在其他运行请求完成后立即处理它们。但是这种机制不会影响你的代码。唯一的区别是请求持续时间(持续时间=请求完成的时间 - 在JS中发出请求的时间)增加。