Вам необходимо использовать SwitchMap Operator
Сопоставить с наблюдаемыми, завершить предыдущие внутренние наблюдаемые, излучать значения.
dopost():SecondResponseType {
return this._http.get<InitialResponseType>('dammyUrl', {}, {
observe: 'response',
headers: {}
}).pipe(
switchMap((initialResponse: InitialResponseType) => this._http.post<SecondResponseType>('url', {}, {
observe: "response",
headers: {}
}))
});
}
Как скоро поскольку вы подписываетесь на depost()
запросы метода 2 будут выполняться последовательно.
, если вы используете HttpClientModule , ваш метод выглядит проще. Практически, HttpClientModule является оберткой вокруг HttpModule
dopost(): Observable<SecondResponseType> {
return this._http.get<SecondResponseType>('dammyUrl').pipe(
switchMap((initialResponse: InitialResponseType) => this._http.post<SecondResponseType>('url'))
});
}