Reference

MojoX::Session::Cookie(3pm)

Signed Cookie Based Sessions

NAME

MojoX::Session::Cookie - 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.

SEE ALSO

Mojolicious, Mojolicious::Guides, <http://mojolicious.org>.