Angular2: динамические синхронные http-запросы
Цель: Сделать серию синхронных HTTP-запросов и иметь возможность подписаться на них одним наблюдаемым потоком.
Образец (не работает):
let query_arr = ['test1','test2','test3']
function make_request(query_arr){
if (query_arr.length){
let payload = JSON.stringify(query_arr[0]);
let headers = new Headers();
query_arr.splice(0,1);
this.http.post('https://endpoint/post',payload,{headers:headers})
.map((res:Response) => {make_request(query_arr)})
}
}.subscribe(
data => console.log('finished http request, moving on to next http request'),
err => console.error(err),
() => console.log('all http requests have been finished')
);
make_request(query_arr)
Функциональность цели:
Необходимо знать, когда каждый ответ был возвращенДолжен знать, когда все ответы вернулись