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§
Sourcefn process_request<'a>(
&'a self,
request: Request,
) -> BoxFuture<'a, Result<Request, Response>>
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.
Sourcefn process_response<'a>(&'a self, response: Response) -> BoxFuture<'a, Response>
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.