pub trait AsyncAuthorizeRequest<B> {
type RequestBody;
type ResponseBody;
type Future: Future<Output = Result<Request<Self::RequestBody>, Response<Self::ResponseBody>>>;
// Required method
fn authorize(&mut self, request: Request<B>) -> Self::Future;
}Available on crate feature
auth only.Expand description
Trait for authorizing requests.
Required Associated Types§
Sourcetype RequestBody
type RequestBody
The type of request body returned by authorize.
Set this to B unless you need to change the request body type.
Sourcetype ResponseBody
type ResponseBody
The body type used for responses to unauthorized requests.
Sourcetype Future: Future<Output = Result<Request<Self::RequestBody>, Response<Self::ResponseBody>>>
type Future: Future<Output = Result<Request<Self::RequestBody>, Response<Self::ResponseBody>>>
The Future type returned by authorize
Required Methods§
Authorize the request.
If the future resolves to Ok(request) then the request is allowed through, otherwise not.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".