IncomingRequest

Struct IncomingRequest 

Source
pub struct IncomingRequest<B = Body> { /* private fields */ }
Available on crate feature server only.
Expand description

Request received from an HTTP client.

Implementations§

Source§

impl<B> IncomingRequest<B>

Source

pub fn new( url_scheme: Scheme, server_addr: SocketAddr, client_addr: SocketAddr, header: RequestHeader, body: B, ) -> Result<Self, Error>

Create a new client request.

Source

pub fn url(&self) -> &Url

Get the request URL.

Source

pub fn query_parameters(&self) -> &QueryDict

Get the query parameters.

Source

pub fn server_addr(&self) -> SocketAddr

Get the server address.

Source

pub fn client_addr(&self) -> SocketAddr

Get the client address.

Source

pub fn body(self) -> B

Take the request body.

Source

pub fn deconstruct(self) -> (RequestHeader, B)

Split the request into the header and the body.

Methods from Deref<Target = Request<B>>§

Source

pub fn header(&self) -> &RequestHeader

Get the request header.

Source

pub fn method(&self) -> Method

Get the request method.

Source

pub fn version(&self) -> Version

Get the request protocol version.

Source

pub fn path(&self) -> &RequestPath

Get the request path.

Source

pub fn get_all_header_fields(&self) -> Iter<'_>

Get all header fields.

Source

pub fn get_header_fields<'a, N>(&'a self, name: &'a N) -> FieldIter<'a>
where N: AsRef<[u8]> + ?Sized,

Get header fields corresponding to a given name.

Source

pub fn get_header_field<'a, N>(&'a self, name: &'a N) -> Option<&'a HeaderField>
where N: AsRef<[u8]> + ?Sized,

Get the last header field of a given name.

Source

pub fn get_header_field_value<'a, N>( &'a self, name: &'a N, ) -> Option<&'a HeaderFieldValue>
where N: AsRef<[u8]> + ?Sized,

Get value of the last header field with a given name.

Trait Implementations§

Source§

impl<B> AsRef<Request<B>> for IncomingRequest<B>

Source§

fn as_ref(&self) -> &Request<B>

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<B> Borrow<Request<B>> for IncomingRequest<B>

Source§

fn borrow(&self) -> &Request<B>

Immutably borrows from an owned value. Read more
Source§

impl<B> Deref for IncomingRequest<B>

Source§

type Target = Request<B>

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.

Auto Trait Implementations§

§

impl<B> Freeze for IncomingRequest<B>

§

impl<B> RefUnwindSafe for IncomingRequest<B>
where B: RefUnwindSafe,

§

impl<B> Send for IncomingRequest<B>
where B: Send,

§

impl<B> Sync for IncomingRequest<B>
where B: Sync,

§

impl<B> Unpin for IncomingRequest<B>

§

impl<B> UnwindSafe for IncomingRequest<B>
where B: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V