Trait Middleware

Source
pub trait Middleware: Send + Sync {
    // Provided methods
    fn process_request<'a>(
        &'a self,
        request: Request,
    ) -> BoxFuture<'a, Result<Request, Response>> { ... }
    fn process_response<'a>(
        &'a self,
        response: Response,
    ) -> BoxFuture<'a, Response> { ... }
    fn name(&self) -> &'static str { ... }
}
Expand description

Core middleware trait that can process requests before handlers and responses after handlers.

Provided Methods§

Source

fn process_request<'a>( &'a self, request: Request, ) -> BoxFuture<'a, Result<Request, Response>>

Process the request before it reaches the handler. Can modify the request or return early response.

Source

fn process_response<'a>(&'a self, response: Response) -> BoxFuture<'a, Response>

Process the response after the handler processes it. Can modify the response before returning to client.

Source

fn name(&self) -> &'static str

Optional middleware name for debugging

Implementors§