NAME

Apache::Cookie - HTTP Cookies Class

SYNOPSIS

use Apache::Cookie ();
my $cookie = Apache::Cookie->new($r, ...);

DESCRIPTION

The Apache::Cookie module is a Perl interface to the cookie routines in libapreq. The interface is based on Lincoln Stein's CGI::Cookie module.

METHODS

This interface is identical the to CGI::Cookie interface with one exception noted below. Refer the to CGI::Cookie documentation while these docs are "under construction."

new

Just like CGI::Cookie::new, but requires an Apache request object:

my $cookie = Apache::Cookie->new($r,
                     -name    =>  'foo', 
                     -value   =>  'bar', 
                     -expires =>  '+3M', 
                     -domain  =>  '.capricorn.com', 
                     -path    =>  '/cgi-bin/database',
                     -secure  =>  1 
                    ); 

bake

Put cookie in the oven to bake. (Add a Set-Cookie header to the outgoing headers table.)

$cookie->bake;

parse

This method parses the given string if present, otherwise, the incoming Cookie header:

my $cookies = $cookie->parse; #hash ref

my %cookies = $cookie->parse;

my %cookies = $cookie->parse($cookie_string);

fetch

Fetch and parse the incoming Cookie header:

my $cookies = Apache::Cookie->fetch; #hash ref

my %cookies = Apache::Cookie->fetch;

as_string

Format the cookie object as a string:

#same as $cookie->bake
$r->err_headers_out->add("Set-Cookie" => $cookie->as_string);

name

Get or set the name of the cookie:

my $name = $cookie->name;

$cookie->name("Foo");

value

Get or set the values of the cookie:

my $value = $cookie->value; 
my @values = $cookie->value;

$cookie->value("string");
$cookie->value(\@array);

domain

Get or set the domain for the cookie:

my $domain = $cookie->domain;
$cookie->domain(".cp.net");

path

Get or set the path for the cookie:

my $path = $cookie->path;
$cookie->path("/");

expires

Get or set the expire time for the cookie:

my $expires = $cookie->expires;
$cookie->expires("+3h");

secure

Get or set the secure flag for the cookie:

my $secure = $cookie->secure;
$cookie->secure(1);

SEE ALSO

Apache(3), Apache::Request(3)

AUTHOR

Doug MacEachern

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 39:

You forgot a '=back' before '=head2'

Around line 131:

=back without =over