Cookieの利用方法について - 読み込み編

トップ > プログラミング研究 > Cookieの読み込み
一つ前にもどる 目次にもどる 次のページへ

Cookieの利用方法について - 読み込み編

Cookieの仕様および書き込む方法について見てきましたが、次は書き込まれたCookieを読み出す方法です。

これは意外にも簡単で、Cookieを呼び出す専用の環境変数を利用します。

 Perlでの呼び出し方法(環境変数を利用)

 $cook = $ENV{'HTTP_COOKIE'};

ブラウザは先ほどの「Domain」と「Path」が一致すれば、そのサーバーに対してCookieを送り返します。それがサーバーの環境変数である「 $ENV{'HTTP_COOKIE'} 」に格納されるのです。

これを上の例のようにプログラム中で変数に格納して利用します。

Cookieを書き込むためのサンプルプログラム

では、Cookieがどのようにデータをやり取りしているのかを見るために、下のようなプログラムを作成してみました。

>>サンプルプログラムはこちらから(別窓)

このプログラムは適当な内容をCookieとして有効期限を指定して書き込むものです。有効期限内であればブラウザを落としても情報を保持しています。また、削除したい場合には過去の有効期限を指定するとCookieは消えます

実際にプログラムの中では下記のようにヘッダーとしてCookieを書き込み、環境変数の$ENV{'HTTP_COOKIE'}で読み込むという形をとります。

■書き込み(ヒアドキュメントとして書く場合)

01: print <<HTML;
02: Content-Type: text/html
03: Set-Cookie: IMYLAB=Cookieの内容; expires=有効期限
04:
05: <html>
06: <head>...
07: ・・・

*行番号は便宜的につけたものです。

Perlをメインに紹介してきましたが、JavaScriptやHTMLでもCookieを書き出すことは可能です。

JavaScriptでCookieを扱う場合

「document.cookie="cookieの値";」で書き込み、「変数=document.cookie;」で読み込みます。このCookieの値のフォーマットは先ほどのPerlと同様です。

ちなみに、現在参照しているページでどんなCookieが書き込まれているか見てみたい場合に、アドレス欄に「JavaScript:document.cookie;」と入力してEnterを押すと、そのページで書き込まれたCookieをブラウザで表示できます。

静的なHTMLでCookieを扱う場合

静的なHTMLファイルであっても、「<meta http-equiv="Set-Cookie" content="~">」というメタタグで書き込みは出来ます。この「http-equiv」というのはヘッダーに書き込むのと同等な働きをHTMLファイルレベルで実現するためのもので、Perlの時にヘッダーに書き込んだのと同等ですが、残念ながらHTMLレベルでは読み込む方法がありません。(私が知らないだけかも、、、)

一つ前にもどる 目次にもどる 次のページへ
(作成2004/07/16 by あいまい)
(更新2005/2/12)

トップ > プログラミング研究 > Cookieの読み込み

日時: 2008年01月25日 15:39
newsingに投稿BuzzurlにブックマークBuzzurlにブックマークlivedoorクリップに投稿 Choixにブックマーク イザ!ブックマーク このエントリーを含むはてなブックマーク
トップに戻る
このエントリーの所属カテゴリ: プログラミング研究
このエントリーのタイトル:Cookieの利用方法について - 読み込み編



copyright © 2000-2008 all rights reserved
あいまいモード・コム - rss2.0 atom
newsingに投稿BuzzurlにブックマークBuzzurlにブックマークlivedoorクリップに投稿 Choixにブックマーク イザ!ブックマーク このエントリーを含むはてなブックマーク