繁体   English   中英

$ http.post没有响应并发调用

[英]$http.post is not responding for concurrent calls

我最近开始使用angular JS开发离子框架。 这是我的$http.post问题

我的要求是我需要将照片上传到服务器。 用户选择了一堆照片(例如15张),然后开始上传到服务器。 这是我上传到服务器的代码

foreach(photo in photoList){
     $http.post(url,photo).then(success(){},error(){})
}

现在我的问题是在15张照片中,只有6-7张正在上传。 对于其余照片,甚至不会调用$http.post()调用。 我听说可能有$http并发问题。 那是对的吗? 如果可以,该如何解决?

按照惯例,您将面临所有Web浏览器中内置的并发限制。 浏览器的连接数不会超过一定数目,通常是同时连接到同一原始主机有6个( 此处详细信息 )。 您无法使用javascript或Web应用程序可用的任何技术来绕过此操作。 这是有充分理由的,因为在某些时候,由于网络饱和或其他资源限制开始受到影响,并行性实际上会导致总体性能下降。 您必须在此限制内工作。 浏览器将在并发阈值内自动将您的请求排队,因此您无需添加任何特殊代码。 但是,如果您想向最终用户提供更准确的进度,则可以选择在代码中强加自己的并发限制。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM