NAME
Jedi::Request - Request object
VERSION
version 1.003
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.