=encoding euc-jp =head1 NAME Apache::Cookie - HTTP Cookie クラス =head1 SYNOPSIS use Apache::Cookie (); my $r = Apache->request; my $cookie = Apache::Cookie->new($r, ...); =head1 DESCRIPTION Apache::Cookie モジュールは I 中のCookie関連処理のPerlインターフェースです。 インターフェースは Lincoln Stein の CGI::Cookie モジュールを基にしています。 =head1 METHODS I は呼び出し元のネームスペースに何もエクスポートしません。 リクエストオブジェクトを C に渡す以外はオブジェ クト指向的インターフェースは I と同一です。 詳細は L のドキュメントを見て下さい。 =head2 new CGI::Cookie::new によく似ていますが、 I リクエストオブジェクトが必要です。: my $cookie = Apache::Cookie->new($r, -name => 'foo', -value => 'bar', -expires => '+3M', -domain => '.capricorn.com', -path => '/cgi-bin/database', -secure => 1 ); =head2 bake クッキーをオーブンに入れて焼きます。(出力されるHTTPヘッダに I ヘッダを付加します。) $cookie->bake; =head2 parse 文字列が渡された場合はそれを、そうで無ければ I ヘッダをパースします。: my $cookies = $cookie->parse; #hash ref my %cookies = $cookie->parse; my %cookies = $cookie->parse($cookie_string); =head2 fetch I ヘッダを解析、取得します。: my $cookies = Apache::Cookie->fetch; #hash ref my %cookies = Apache::Cookie->fetch; =head2 as_string cookie オブジェクトを文字列化します。 # $cookie->bake と同じ $r->err_headers_out->add("Set-Cookie" => $cookie->as_string); =head2 name cookie の名前を取得もしくは設定します。 my $name = $cookie->name; $cookie->name("Foo"); =head2 value cookie の値を取得もしくは設定します。 my $value = $cookie->value; my @values = $cookie->value; $cookie->value("string"); $cookie->value(\@array); =head2 domain cookie のドメインを取得もしくは設定します。 my $domain = $cookie->domain; $cookie->domain(".cp.net"); =head2 path cookie のパスを取得もしくは設定します。 my $path = $cookie->path; $cookie->path("/"); =head2 expires cookie の有効期限を取得もしくは設定します。 my $expires = $cookie->expires; $cookie->expires("+3h"); =head2 secure cookie の secure フラグを取得もしくは設定します。 my $secure = $cookie->secure; $cookie->secure(1); =head1 BUGS =over 4 =item RFC 2964-5 の実装が完全ではありません。 =item C はハッシュリファレンスも引数として受け取るべきです。 =item OS X では動作しないと報告されてます。(リンクの問題でしょうか?) =back =head1 SEE ALSO Apache(3), Apache::Request(3), CGI::Cookie(3) =head1 AUTHOR Doug MacEachern, updated for v1.0 by Joe Schaefer