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)

Функциональность цели:

Необходимо знать, когда каждый ответ был возвращенДолжен знать, когда все ответы вернулись

Ответы на вопрос(3)

Ваш ответ на вопрос