Struct highnoon::request::Request [−][src]
An incoming request
Implementations
impl<S: Send + Sync + 'static> Request<S>
[src]
pub fn state(&self) -> &S
[src]
Get a reference to the App
's state
pub fn method(&self) -> &Method
[src]
Get the HTTP method being used by this request
pub fn uri(&self) -> &Uri
[src]
Get the URI that was used for this request
pub fn query<T: DeserializeOwned>(&self) -> Result<T>
[src]
Parse the URI query string into an instance of T
that derives Deserialize
.
(To get the raw query string access it via req.uri().query()
).
If there is no query string, deserialize an empty string.
pub fn header<T: Header>(&self) -> Option<T>
[src]
Get a typed header from the request
(See also headers
)
pub fn headers(&self) -> &HeaderMap<HeaderValue>
[src]
Get all headers as a HeaderMap
pub fn param(&self, param: &str) -> Result<&str>
[src]
Get a route parameter (eg. :key
or *key
segments in the URI path)
pub fn params(&self) -> &Params
[src]
Get all route parameters
pub async fn body_mut(&mut self) -> Result<&mut Body>
[src]
Get the request body as a hyper::Body
pub async fn reader(&mut self) -> Result<impl Read + '_>
[src]
Get a reader to read the request body
(This does buffer the whole body into memory (not necessarily contiguous memory).
If you need to protect against malicious clients you should access the body via body_mut
pub async fn body_bytes(&mut self) -> Result<Vec<u8>>
[src]
Get the request body as raw bytes in a Vec<u8>
pub async fn body_string(&mut self) -> Result<String>
[src]
Get the request body as UTF-8 data in String
pub async fn body_json<T: DeserializeOwned>(&mut self) -> Result<T>
[src]
Get the request body as JSON and deserialise into T
pub fn remote_addr(&self) -> &SocketAddr
[src]
Get the address of the remote peer.
This method uses the network level address only and hwnce may be incorrect if you are
behind a proxy. (This does not check for any Forwarded
headers etc...)
Auto Trait Implementations
impl<S> !RefUnwindSafe for Request<S>
[src]
impl<S> Send for Request<S> where
S: Send,
[src]
S: Send,
impl<S> Sync for Request<S> where
S: Send,
[src]
S: Send,
impl<S> Unpin for Request<S>
[src]
impl<S> !UnwindSafe for Request<S>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,