Struct nickel::Request [] [src]

pub struct Request<'mw, 'server: 'mw, D: 'mw = ()> {
    pub origin: HyperRequest<'mw, 'server>,
    pub route_result: Option<RouteResult<'mw, D>>,
    // some fields omitted
}

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

the original hyper::server::Request

a HashMap<String, String> holding all params with names and values

Methods

impl<'mw, 'server, D> Request<'mw, 'server, D>
[src]

[src]

[src]

[src]

[src]

Trait Implementations

impl<'mw, 'server, D> Extensible for Request<'mw, 'server, D>
[src]

[src]

Get a reference to the type's extension storage.

[src]

Get a mutable reference to the type's extension storage.

impl<'mw, 'server, D> Pluggable for Request<'mw, 'server, D>
[src]

[src]

Return a copy of the plugin's produced value. Read more

[src]

Return a reference to the plugin's produced value. Read more

[src]

Return a mutable reference to the plugin's produced value. Read more

[src]

Create and evaluate a once-off instance of a plugin.

impl<'mw, 'conn, D> FormBody for Request<'mw, 'conn, D>
[src]

[src]

Extracts URL encoded data from the request body. # Examples ```{rust} #[macro_use] extern crate nickel; use nickel::{Nickel, HttpRouter, FormBody}; Read more

impl<'mw, 'conn, D> JsonBody for Request<'mw, 'conn, D>
[src]

[src]

impl<'mw, 'conn, D> QueryString for Request<'mw, 'conn, D>
[src]

[src]

Extracts URL encoded data from the URL query string. # Examples ```{rust} #[macro_use] extern crate nickel; use nickel::{Nickel, HttpRouter, QueryString}; Read more

impl<'mw, 'server, D> Referer for Request<'mw, 'server, D>
[src]

[src]

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);
}