NAME

Jedi::Request - Request object

VERSION

version 1.002

DESCRIPTION

This object is pass through the route, as a second params. (self, request, response).

You can get data from it, to generate your response

ATTRIBUTES

env

The environment variable, as it received from PSGI. This is a HASH.

path

The end of the path_info, without the road.

Ex: road("/test"), route("/me") # so /test/me/ will give the path /me/

The $ENV{PATH_INFO} is untouch, you can use that method to get the relative PATH.

The path always end with '/'.

params

If method is POST or PUT, it will parse the body, and extract the params.

Otherwise it parse the QUERY_STRING.

It always return an HASH, with:

key => Scalar // [ARRAY of Values]

Ex:

a=1&a=2&a=3&b=4&b=5&b=6&c=1

You receive:

{	
 a => [1,2,3],
 b => [4,5,6],
 c => 1
}

uploads

Return the file uploads.

For a request like test@test.txt, the form is :

   	test => {
	    filename   "test.txt",
        headers    {
            Content-Disposition   "form-data; name="test"; filename="test.txt"",
            Content-Type          "text/plain"
        },
        name       "test",
        size       13,
        tempname   "/var/folders/_1/097rrrdd2s5dwqgd7hp6nlx00000gn/T/X4me5HO7L_.txt"
   	}

Ex with curl :

curl -F 'test@test.txt' http://localhost:5000/post

You can read the tempname file to get the content. When the request is sent back, the file is automatically removed.

See <HTTP::Body> for more details.

cookies

Parse the HTTP_COOKIE, and return an HASH of ARRAY

Ex:

a=1&b&c; b=4&5&6; c=1

You receive:

 {
  a => [1,2,3],
	b => [4,5,6],
	c => [1]
 }

remote_address

Try to find the real ip of the user and return the int number of it

METHODS

scheme

Return the scheme from proxied proto or main proto

port

Return server port

host

Return the proxied host or the main host

BUGS

Please report any bugs or feature requests on the bugtracker website https://github.com/celogeek/perl-jedi/issues

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

celogeek <me@celogeek.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 by celogeek <me@celogeek.com>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.