Trait FromRequestParts
pub trait FromRequestParts<S>: Sized {
type Rejection: IntoResponse;
// Required method
fn from_request_parts(
parts: &mut Parts,
state: &S,
) -> impl Future<Output = Result<Self, Self::Rejection>> + Send;
}
Expand description
Types that can be created from request parts.
Extractors that implement FromRequestParts
cannot consume the request body and can thus be
run in any order for handlers.
If your extractor needs to consume the request body then you should implement FromRequest
and not FromRequestParts
.
See axum::extract
for more general docs about extractors.
Required Associated Typesยง
type Rejection: IntoResponse
type Rejection: IntoResponse
If the extractor fails itโll use this โrejectionโ type. A rejection is a kind of error that can be converted into a response.
Required Methodsยง
Dyn Compatibilityยง
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Typesยง
ยงimpl<S> FromRequestParts<S> for ()
impl<S> FromRequestParts<S> for ()
type Rejection = Infallible
async fn from_request_parts( _: &mut Parts, _: &S, ) -> Result<(), <() as FromRequestParts<S>>::Rejection>
ยงimpl<S> FromRequestParts<S> for Cookies
impl<S> FromRequestParts<S> for Cookies
type Rejection = (StatusCode, &'static str)
async fn from_request_parts( parts: &mut Parts, _state: &S, ) -> Result<Cookies, <Cookies as FromRequestParts<S>>::Rejection>
ยงimpl<S> FromRequestParts<S> for Session
impl<S> FromRequestParts<S> for Session
type Rejection = (StatusCode, &'static str)
async fn from_request_parts( parts: &mut Parts, _state: &S, ) -> Result<Session, <Session as FromRequestParts<S>>::Rejection>
ยงimpl<S, Backend> FromRequestParts<S> for AuthSession<Backend>
impl<S, Backend> FromRequestParts<S> for AuthSession<Backend>
type Rejection = (StatusCode, &'static str)
async fn from_request_parts( parts: &mut Parts, _state: &S, ) -> Result<AuthSession<Backend>, <AuthSession<Backend> as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1> FromRequestParts<S> for (T1,)
impl<S, T1> FromRequestParts<S> for (T1,)
ยงimpl<S, T1, T2> FromRequestParts<S> for (T1, T2)
impl<S, T1, T2> FromRequestParts<S> for (T1, T2)
ยงimpl<S, T1, T2, T3> FromRequestParts<S> for (T1, T2, T3)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3> FromRequestParts<S> for (T1, T2, T3)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3), <(T1, T2, T3) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4> FromRequestParts<S> for (T1, T2, T3, T4)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4> FromRequestParts<S> for (T1, T2, T3, T4)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4), <(T1, T2, T3, T4) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5> FromRequestParts<S> for (T1, T2, T3, T4, T5)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5> FromRequestParts<S> for (T1, T2, T3, T4, T5)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5), <(T1, T2, T3, T4, T5) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6), <(T1, T2, T3, T4, T5, T6) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7), <(T1, T2, T3, T4, T5, T6, T7) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8), <(T1, T2, T3, T4, T5, T6, T7, T8) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9), <(T1, T2, T3, T4, T5, T6, T7, T8, T9) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) as FromRequestParts<S>>::Rejection>
ยงimpl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequestParts<S> + Send,
T16: FromRequestParts<S> + Send,
S: Send + Sync,
impl<S, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> FromRequestParts<S> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)where
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequestParts<S> + Send,
T16: FromRequestParts<S> + Send,
S: Send + Sync,
type Rejection = Response<Body>
async fn from_request_parts( parts: &mut Parts, state: &S, ) -> Result<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) as FromRequestParts<S>>::Rejection>
Implementorsยง
ยงimpl<OuterState, InnerState> FromRequestParts<OuterState> for State<InnerState>
impl<OuterState, InnerState> FromRequestParts<OuterState> for State<InnerState>
type Rejection = Infallible
ยงimpl<S> FromRequestParts<S> for Parts
impl<S> FromRequestParts<S> for Parts
type Rejection = Infallible
ยงimpl<S> FromRequestParts<S> for Extensions
impl<S> FromRequestParts<S> for Extensions
type Rejection = Infallible
ยงimpl<S> FromRequestParts<S> for HeaderMap
Clone the headers from the request.
impl<S> FromRequestParts<S> for HeaderMap
Clone the headers from the request.
Prefer using TypedHeader
to extract only the headers you need.