Я начинаю создавать шлюз API микросервисов и рассматриваю возможность использования Spring Cloud для помощи в маршрутизации. Но для некоторых вызовов API шлюза потребуется несколько запросов к разным службам.
Допустим, у меня есть 2 службы: Детали заказа и Служба доставки. Я хочу иметь конечную точку шлюза ПОЛУЧИТЬ /заказы/{orderId}, которая выполняет вызов Подробная информация о заказе, а затем Служба доставки и объединяет их, чтобы вернуть полные сведения о заказе с доставкой. Возможно ли это с маршрутизацией облака Spring или мне нужно сделать это вручную, используя что-то вроде RestTemplate для совершения вызовов?
На GitHub опубликовано предложение по улучшению иметь маршруты, поддерживающие несколько URI. Пока планов по реализации этого пока нет, по крайней мере, по словам одного из участников.
Я только что нашел о ProxyExchange, который может служить этой цели вместо того, чтобы полагаться на RestTemplate. cloud.spring.io/spring-cloud-gateway/multi/…
@Д.Томов Отлично! Это то, что они также рекомендовали использовать в проблеме, на которую я ссылался в своем ответе.
@D.Tomov, не могли бы вы посоветовать, как вы это сделали?
Итак, вы говорите, что пока невозможно делать то, что я хочу, и я должен придерживаться стандартных контроллеров для этих составных конечных точек? Будет ли использование шаблона отдыха лучшей практикой? (все микросервисы - это отдых)