我需要同时发布带有多个参数的相同网址。 如何实现角度1
答案 0 :(得分:2)
您可以使用$http
服务$http.post()
来执行此操作。如果您想要执行多个请求,可以循环执行。例如。 return $http.post(url,data).then((response)=>{return response.data;})
这是您需要通过同时说" "来澄清你的意思,因为如果你想同时收到所有这些请求的回复,那么你需要一些像延迟对象更先进的东西。这是$q
服务的用途,它可以帮助您解决此类Promise。
首先,您需要收集数组中的所有异步回调:
var promises = [];
angular.forEach(array, function(element) {
promises.push( $http.post(url,element).then((res)=>{return res.data}) );
}
(无论你喜欢传递不同的参数/数据)
然后,您需要使用$q.all()
$q.all(promises).then((res)=>{
/* do what you need with them, e.g:
$q.defer().resolve(res)
*/
})
现在应该使用来自先前请求的数据解析数组。