Spring Flux: как настроить несколько WebFilter - PullRequest
0 голосов
/ 22 февраля 2020

Я пишу приложение Spring Web Flux. Я создал два компонента WebFilter:

AlphaFilter

class AlphaFilter implement WebFilter {
    public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
        // ....
        // Alpha Filter Configurations
        return chain.filter(exchange);
    }
}

AuthenticationFilter

class AuthenticationFilter implement WebFilter {
    public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
        // ....
        // Alpha Filter Configurations
        return chain.filter(exchange);
    }
}

Я хотел убедиться, что AuthenticationFilter работает до AlphaFilter. Как настроить фильтры так, чтобы AuthenticationFilter работал до AlphaFilter?

1 Ответ

1 голос
/ 22 февраля 2020

Сагар,

Отвечает ли эта часть документации на ваш вопрос?

В API WebHandler вы можете использовать WebFilter для применения перехвата- стиль логики c до и после остальной части цепочки обработки фильтров и целевого WebHandler. При использовании WebFlux Config зарегистрировать WebFilter так же просто, как объявить его как bean-компонент Spring и (необязательно) выразить приоритет с помощью @Order в объявлении bean-компонента или реализовать Ordered.

...