pub struct RequestParts<'a> {
pub method: &'a Method,
pub path: &'a str,
pub query: Option<&'a str>,
pub headers: &'a HeaderMap,
pub peer: SocketAddr,
}Expand description
Borrowed view of an incoming request, passed to an AuthDecider.
All fields borrow from the live request: building this is allocation-free, so the per-request gate stays cheap. The body is intentionally absent: an auth decision is taken from method, path, query, headers, and peer alone.
Fields§
§method: &'a MethodRequest method (the original method on the /verify path, recovered
from the fronting proxy’s forwarding headers).
path: &'a strRequest path, query stripped.
query: Option<&'a str>Raw query string, if any (without the leading ?).
headers: &'a HeaderMapRequest headers.
peer: SocketAddrDirect peer socket address (the connecting client, or the fronting proxy).
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for RequestParts<'a>
impl<'a> RefUnwindSafe for RequestParts<'a>
impl<'a> Send for RequestParts<'a>
impl<'a> Sync for RequestParts<'a>
impl<'a> Unpin for RequestParts<'a>
impl<'a> UnsafeUnpin for RequestParts<'a>
impl<'a> UnwindSafe for RequestParts<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request