NAME
Prancer::Context
SYNOPSIS
The context gives you access to all pieces of a request from request parameters to cookies, sessions and headers. It can be used by calling context
from anywhere in a package that extends Prancer::Application. Otherwise you must pass it to other packages to make it available.
use Prancer::Application qw(:all);
use parent qw(Prancer::Application);
sub handle {
my ($self, $env) = @_;
mount('GET', '/', sub {
context->header(set => 'Content-Type', value => 'text/plain');
context->body("hello world");
context->finalize(200);
});
return dispatch;
}
METHODS
- env
-
Returns the PSGI environment for the request.
- session
-
This gives access to the session in various ways. For example:
my $does_foo_exist = context->session->has('foo'); my $foo = context->session->get('foo'); my $bar = context->session->get('bar', 'some default value if bar does not exist'); context->session->set('foo', 'bar'); context->session->remove('foo');
Changes made to the session are persisted immediately to whatever medium backs your sessions.
- request
-
Returns the Prancer::Request object for the request.
- response
-
Returns the Prancer::Response object that will be used to generate the response.
- header
-
This gives access request and response headers. For example:
# get a request header my $useragent = context->header(get => 'user-agent'); # set a response header context->header(set => 'Content-Type', value => 'text/plain');
-
This gives access to request and response cookies. For example:
# get a request cookie my $foo = context->cookie(get => 'foo'); # set a response cookie context->cookie(set => 'foo', value => { 'value' => 'bar', 'domain' => '.example.com', });
- param
-
This is a wrapper around the
param
method to Prancer::Request. - params
-
This is a wrapper around the
params
method to Prancer::Request. - upload
-
This is a wrapper around the
upload
method to Prancer::Request. - uploads
-
This is a wrapper around the
uploads
method to Prancer::Request. - body
-
This is a wrapper around the
body
method to Prancer::Response. - finalize
-
This is a wrapper around the
finalize
method to Prancer::Response.