Filters provide the ability to support the following use cases:
For a server application, the interface’s method can be implemented.
The interface contains a resolved chain of filters with the final entry in the chain being the matched route. The ServerFilterChain.proceed(io.micronaut.http.HttpRequest) method can be used to resume processing of the request.
The method returns a Reactive Streams that emits the response that will be returned to the client. Implementors of filters can subscribe to the Publisher and mutate the emitted object to modify the response prior to returning the response to the client.