У меня 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 в resolver1. Я использовал flatMap, но в итоге получаю данные только из второго API.
resolve(route: ActivatedRouteSnapshot) {
return this.myService.getDataFromApiOne(route.params.id).pipe(flatMap(data => {
return this.myService.getDataFromApiTwo(data.someKey.id);
}));
}