Как отключить фильтр zuul для конкретного случая условия и не отправлять на сопоставленный URL
У меня есть реализация фильтра zuul с конфигурацией маршрута
related:
path: /api/search/related/**
url: http://abc.xyz.neverhit.this.URl
и запустить реализацию
@Override
public Object run() {
RequestContext context = getCurrentContext();
HttpServletRequest request = context.getRequest();
UriComponents uri = UriComponentsBuilder.fromHttpUrl(recommendationsServiceHostname)
.path("/recommendations/related")
.query(request.getQueryString()).build();
if (shouldRouteToRecommendationsService(request, uri)) {
logger.info("Calling proxy service");
try {
context.setRouteHost(new URL(uri.toString()));
} catch (MalformedURLException ex) {
logger.error("MalformedURLException for URL:" + uri.toString());
}
}
else
{
//Something here or Solution that should handle a request like a filter is not present.
}
return null;
}
Это нормально работает, если часть и отправка запроса в прокси-сервис. Проблема для другой части. То, что я ищу, это в другом сценарии, он должен вести себя так, как будто фильтр никогда не существовал, и он должен обрабатывать запрос, который обрабатывал раннее выполнение вызова API из локального кода.
Любой взлом или правильное решение для этого?