pub struct NickelRequest<'mw, 'server, D = ()>where
'server: 'mw,
D: 'mw,{
pub origin: Request<'mw, 'server>,
pub route_result: Option<RouteResult<'mw, D>>,
/* private fields */
}
Expand description
A container for all the request data.
The lifetime 'mw
represents the lifetime of various bits of
middleware state within nickel. It can vary and get shorter.
The lifetime 'server
represents the lifetime of data internal to
the server. It is fixed and longer than 'mw
.
Fields§
§origin: Request<'mw, 'server>
the original hyper::server::Request
route_result: Option<RouteResult<'mw, D>>
a HashMap<String, String>
holding all params with names and values
Implementations§
Trait Implementations§
Source§impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> AsMut<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> AsMut<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
Source§fn as_mut(&mut self) -> &mut &'r mut NickelRequest<'mw, 'server, D>
fn as_mut(&mut self) -> &mut &'r mut NickelRequest<'mw, 'server, D>
Converts this type into a mutable reference of the (usually inferred) input type.
Source§impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> AsRef<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> AsRef<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
Source§fn as_ref(&self) -> &&'r mut NickelRequest<'mw, 'server, D>
fn as_ref(&self) -> &&'r mut NickelRequest<'mw, 'server, D>
Converts this type into a shared reference of the (usually inferred) input type.
Source§impl<'mw, 'server, D> Extensible for Request<'mw, 'server, D>
impl<'mw, 'server, D> Extensible for Request<'mw, 'server, D>
Source§fn extensions(&self) -> &TypeMap
fn extensions(&self) -> &TypeMap
Get a reference to the type’s extension storage.
Source§fn extensions_mut(&mut self) -> &mut TypeMap
fn extensions_mut(&mut self) -> &mut TypeMap
Get a mutable reference to the type’s extension storage.
Source§impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> From<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> From<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
Source§fn from(req: &'r mut NickelRequest<'mw, 'server, D>) -> Self
fn from(req: &'r mut NickelRequest<'mw, 'server, D>) -> Self
Converts to this type from the input type.
Source§impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> Into<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
impl<'r, 'mw: 'r, 'server: 'mw, D: 'mw> Into<&'r mut Request<'mw, 'server, D>> for Maybe<'r, 'mw, 'server, D>
Source§fn into(self) -> &'r mut NickelRequest<'mw, 'server, D>
fn into(self) -> &'r mut NickelRequest<'mw, 'server, D>
Converts this type into the (usually inferred) input type.
Source§impl<'mw, 'server, D: 'mw> MultipartBody<'mw, 'server> for NickelRequest<'mw, 'server, D>
impl<'mw, 'server, D: 'mw> MultipartBody<'mw, 'server> for NickelRequest<'mw, 'server, D>
Source§fn multipart_body(
&mut self,
) -> Option<Multipart<&mut HyperRequest<'mw, 'server>>>
fn multipart_body( &mut self, ) -> Option<Multipart<&mut HyperRequest<'mw, 'server>>>
Get a multipart reader for the request body, if the request is of the right type.
Source§impl<'mw, 'server, D> Pluggable for Request<'mw, 'server, D>
impl<'mw, 'server, D> Pluggable for Request<'mw, 'server, D>
Source§fn get<P>(&mut self) -> Result<<P as Key>::Value, <P as Plugin<Self>>::Error>
fn get<P>(&mut self) -> Result<<P as Key>::Value, <P as Plugin<Self>>::Error>
Return a copy of the plugin’s produced value. Read more
Source§fn get_ref<P>(
&mut self,
) -> Result<&<P as Key>::Value, <P as Plugin<Self>>::Error>
fn get_ref<P>( &mut self, ) -> Result<&<P as Key>::Value, <P as Plugin<Self>>::Error>
Return a reference to the plugin’s produced value. Read more
Source§impl<'mw, 'conn, D> QueryString for Request<'mw, 'conn, D>
impl<'mw, 'conn, D> QueryString for Request<'mw, 'conn, D>
Source§impl<'mw, 'server, D> Referer for Request<'mw, 'server, D>
impl<'mw, 'server, D> Referer for Request<'mw, 'server, D>
Source§fn referer(&self) -> Option<&str>
fn referer(&self) -> Option<&str>
Get the Request’s referer header
§Examples
extern crate nickel;
use nickel::{Nickel, HttpRouter, Request, Response, MiddlewareResult};
use nickel::extensions::{Referer, Redirect};
fn referer<'mw, 'conn>(req: &mut Request<'mw, 'conn>, res: Response<'mw>) -> MiddlewareResult<'mw> {
let back = req.referer().unwrap_or("http://nickel-org.github.io/");
return res.redirect(back)
}
fn main() {
let mut server = Nickel::new();
server.get("/a", referer);
}
Auto Trait Implementations§
impl<'mw, 'server, D> Freeze for Request<'mw, 'server, D>
impl<'mw, 'server, D = ()> !RefUnwindSafe for Request<'mw, 'server, D>
impl<'mw, 'server, D = ()> !Send for Request<'mw, 'server, D>
impl<'mw, 'server, D = ()> !Sync for Request<'mw, 'server, D>
impl<'mw, 'server, D> Unpin for Request<'mw, 'server, D>
impl<'mw, 'server, D = ()> !UnwindSafe for Request<'mw, 'server, D>
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