Я пытаюсь вызвать две наблюдаемые, с ответом секунды я манипулирую первой, а затем возвращаю новую наблюдаемую.
return this.http.get(requestUrl)
.map((response: User) => {
sessionManager.currentUser = response;
return this.isFirstTimeUser(response.id);
})
.do((response: any) => {
console.log(response);
sessionManager.currentUser.firstTimeLogin = response === 'true';
return Observable.create(sessionManager.currentUser);
})
.toPromise();
isFirstTimeUser (response.id) - это еще одна функция, которая возвращает наблюдаемое.
private isFirstTimeUser(userId: number): Observable<any> {
const requestUrl = 'someUrl';
return this.http.get(requestUrl, {responseType: 'text'});
}
Все, что я хочу сделать, это получить объект пользователя из первого http-вызова, сделать еще один запрос, используя id
пользователя во втором вызове, а затем, после того как я получу ответ от второго наблюдаемого, я обновлю свойство первый ответ и вернуть обновленный первый ответ. Как мне этого добиться? На какую функцию rxjs я должен смотреть?