MojoX::Session::Cookie(3) Signed Cookie Based Sessions

SYNOPSIS


use MojoX::Session::Cookie;
use MojoX::Session::Cookie::Controller;
my $session = MojoX::Session::Cookie->new;
my $c = MojoX::Session::Cookie::Controller->new;
$session->load($c);
$c->session(foo => 'bar');
$session->store($c);

DESCRIPTION

MojoX::Session::Cookie is a very simple signed cookie based session implementation. All data gets stored on the client side, but is protected from unwanted changes with a signature.

ATTRIBUTES

MojoX::Session::Cookie implements the following attributes.

cookie_domain

    my $domain = $session->cookie_domain;
    $session   = $session->cookie_domain('.example.com');

Domain for session cookie, not defined by default.

cookie_name

    my $name = $session->cookie_name;
    $session = $session->cookie_name('session');

Name of the signed cookie used to store session data, defaults to "mojolicious".

cookie_path

    my $path = $session->cookie_path;
    $session = $session->cookie_path('/foo');

Path for session cookie, defaults to "/".

default_expiration

    my $time = $session->default_expiration;
    $session = $session->default_expiration(3600);

Time for the session to expire in seconds from now, defaults to 3600. The expiration timeout gets refreshed for every request.

METHODS

MojoX::Session::Cookie inherits all methods from Mojo::Base and implements the following ones.

load

    $session->load($c);

Load session data from signed cookie.

store

    $session->store($c);

Store session data in signed cookie.