pub trait Handler: Send + Sync {
// Required method
fn call<'a>(
&'a self,
ctx: &'a RequestContext,
req: &'a mut Request,
) -> BoxFuture<'a, Response>;
// Provided method
fn dependency_overrides(&self) -> Option<Arc<DependencyOverrides>> { ... }
}Expand description
A handler that processes requests into responses.
This trait abstracts over handler functions, allowing middleware to wrap any type that can handle requests.
Required Methods§
Provided Methods§
Sourcefn dependency_overrides(&self) -> Option<Arc<DependencyOverrides>>
fn dependency_overrides(&self) -> Option<Arc<DependencyOverrides>>
Optional dependency overrides to apply when building request contexts.
Default implementation returns None, which means no overrides.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl<H: Handler + ?Sized> Handler for Arc<H>
Delegate Handler to an Arc-wrapped handler.
impl<H: Handler + ?Sized> Handler for Arc<H>
Delegate Handler to an Arc-wrapped handler.
This is a convenience for building apps behind Arc (common in tests and when
cloning shared handlers).