NAME
Mojo::UserAgent::CookieJar - Cookie jar for HTTP user agents
SYNOPSIS
# Add response cookies
my
$jar
= Mojo::UserAgent::CookieJar->new;
$jar
->add(
Mojo::Cookie::Response->new(
name
=>
'foo'
,
value
=>
'bar'
,
domain
=>
'localhost'
,
path
=>
'/test'
)
);
# Find request cookies
say
$cookie
->name;
say
$cookie
->value;
}
DESCRIPTION
Mojo::UserAgent::CookieJar is a minimalistic and relaxed cookie jar used by Mojo::UserAgent, based on RFC 6265.
ATTRIBUTES
Mojo::UserAgent::CookieJar implements the following attributes.
ignore
my
$ignore
=
$jar
->ignore;
$jar
=
$jar
->ignore(
sub
{...});
A callback used to decide if a cookie should be ignored by "collect".
# Ignore all cookies
$jar
->ignore(
sub
{ 1 });
# Ignore cookies for domains "com", "net" and "org"
$jar
->ignore(
sub
{
my
$cookie
=
shift
;
return
undef
unless
my
$domain
=
$cookie
->domain;
return
$domain
eq
'com'
||
$domain
eq
'net'
||
$domain
eq
'org'
;
});
max_cookie_size
my
$size
=
$jar
->max_cookie_size;
$jar
=
$jar
->max_cookie_size(4096);
Maximum cookie size in bytes, defaults to 4096
(4KiB).
METHODS
Mojo::UserAgent::CookieJar inherits all methods from Mojo::Base and implements the following new ones.
add
$jar
=
$jar
->add(
@cookies
);
Add multiple Mojo::Cookie::Response objects to the jar.
all
my
$cookies
=
$jar
->all;
Return all Mojo::Cookie::Response objects that are currently stored in the jar.
# Names of all cookies
say
$_
->name
for
@{
$jar
->all};
collect
$jar
->collect(Mojo::Transaction::HTTP->new);
Collect response cookies from transaction.
empty
$jar
->empty;
Empty the jar.
find
my
$cookies
=
$jar
->find(Mojo::URL->new);
Find Mojo::Cookie::Request objects in the jar for Mojo::URL object.
# Names of all cookies found
prepare
$jar
->prepare(Mojo::Transaction::HTTP->new);
Prepare request cookies for transaction.