Zuul повторить все потоки - PullRequest
0 голосов
/ 26 сентября 2019

мое приложение имеет один маршрут ( routeX ) с динамической маршрутизацией до 2 служб ( serviceA и serviceB ) в зависимости от содержимого запроса.Каждый сервис имеет свой формат ввода и вывода.Я создал 2 предварительных фильтра zuul: один предварительный фильтр для преобразования входного формата routeX в формат ввода serviceA и другой предварительный фильтр для преобразования входного формата routeX для ввода формата serviceB .Я создал маршрутизатор для отправки запроса на serviceA или serviceB на основе содержимого публикации запроса.После того как клиент получил ответ serviceA или serviceB (ленточная клиентская фаза), я создал 2 почтовых фильтра для преобразования ответа serviceA или serviceB в один выходной формат (ответ routeX).Если произойдет ошибка в serviceA, я хочу повторить попытку в serviceB, но обработка должна начаться снова при предварительных фильтрах Zuul, а не только на ленточной клиентской фазе (поскольку формат ввода serviceB отличается от формата ввода serviceA).Как я мог повторить все потоки zuul?Может ли пост-фильтр добавить параметр в контекст запроса и принудительно начать обработку заново с предварительных фильтров в zuul?Я посмотрел ZuulFallbackProvider, но я не хочу дублировать обработку потока zuul (до и после фильтров) в ZuulFallbackProvider.

...