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;
}
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.