У меня есть 2 REST API. Требуются данные из обоих API. В то же время 2-й API принимает входные данные от API 1 в качестве параметра.
GET api/one --> {id: 3}, этот идентификатор ответа требуется в GET api/two?inputFromApiOne=3 --> {name: 'SS'}
Мой окончательный ответ, доступный в компоненте, должен быть -
{
"id": 3, -- from API One
"name": "SS" -- from API Two
}
Я использовал преобразователь для получения данных из API One, но не смог использовать его в качестве входных данных во втором преобразователе.
Я также пытался получить данные из обоих API в распознавателе1. Я использовал flatMap, но тогда я получаю данные только из 2-го API.
resolve(route: ActivatedRouteSnapshot) {
return this.myService.getDataFromApiOne(route.params.id).pipe(flatMap(data => {
return this.myService.getDataFromApiTwo(data.someKey.id);
}));
}