#spring-boot #spring-cloud-gateway
#spring-boot #spring-cloud-gateway
Вопрос:
Я ищу способ выполнить некоторые фильтры и предикаты для запроса, а в конце просто вернуть ответ пользователю, вместо того, чтобы перенаправлять его на определенный URI. Например, пользователь вызывает /auth/token, и у моего шлюза есть фильтр, который генерирует токен и преобразует тело ответа (используя ModifyResponseBodyGatewayFilterFactory ). При добавлении фильтра, который просто возвращает response.setCompleted()
, тело возвращает пустое, а код состояния всегда равен 200.
return (exchange, chain) -> {
return modifyResponseBodyGatewayFilterFactory.apply(c -> c.setRewriteFunction(Object.class, String.class, SomeBody))
.filter(exchange, chain)
.then(exchange.getResponse().setComplete());
}
Как я могу вернуть конкретное тело пользователю без маршрутизации в URI?
Заранее спасибо!
Ответ №1:
Я не смог найти решение, поэтому вместо этого я создал контроллер веб-потока для этого конкретного запроса. Для меня это достаточно хорошее решение.
Комментарии:
1. не могли бы вы обновить ответ своим кодом