Фильтры для приложения загрузки webflux spring, возвращающие ResponseEntity <?>

Мое приложение для весенней загрузки настроено как реактивное. Но мои конечные точки REST API настроены для возврата ResponseEntity без Mono или Flux.

@GetMapping("/wiki/test")
    public ResponseEntity<?> test() {
        log.info("TEST CALLED????");
        return ResponseEntity.ok().body("HALLO");
    }

Я хочу реализовать фильтр, который будет проверять входящие заголовки для каждой конечной точки. Старые фильтры сервлетов конечно не работают, также не работают новые WebFilter для webflux и другие.

Мой проект находится в github вики-контроллер

Я не хочу использовать конечные точки на основе маршрутизатора, и я предпочитаю Netty при загрузке Spring. Какие фильтры я могу использовать как для реактивных, так и для сервлетных приложений? Какие-либо предложения?

Почему вы не возвращаете Mono <ResponseEntity>?

Rajesh J Advani 17.01.2019 12:21

Я должен добавить Mono к каждому ответу, представьте себе большое приложение, люди уже написали код, например, с помощью ResponseEntity, поэтому я хочу изменить tomcat на webflux, но мне не нужно функциональное программирование в контроллерах Rest.

Armen Arzumanyan 17.01.2019 13:28
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
1 174
1

Ответы 1

Если ваш вопрос: «Какой код я бы написал для работы в качестве фильтра как в реактивных, так и в нереактивных приложениях Spring, вы не сможете». Вы можете написать простой класс / компонент, который будет использоваться как из WebFilter или фильтр.

Я хочу использовать Spring boot + netty, но не хочу использовать функциональное программирование в контроллерах REST.

Armen Arzumanyan 17.01.2019 13:29

Это все равно, что сказать, что вы хотите водить Tesla, но заправляете его бензином. Вам нужно написать неблокирующий код при использовании Netty, иначе ваш сервер сможет поддерживать только одну транзакцию за раз на ядро ​​процессора. Spring Webflux и Spring MVC принципиально отличаются, потому что среды, в которых они работают, совершенно разные.

Rajesh J Advani 18.01.2019 06:16

да, почему мне нравится Vertx, я думаю, что функциональное программирование не для контроллеров, webflux - это весело, но его нужно улучшать. Благодарность

Armen Arzumanyan 18.01.2019 10:13

Другие вопросы по теме