「cookie」は、ブラウザとサーバでやりとりされるデータと言う事は判っていましたが、実際にどの様なデータが流れているかを見た事がありませんでした。「cookie」は、HTTPのリクエストとレスポンスのヘッダ上でやりとりされるので、以前紹介した「ieHTTPHeaders」を使うと、そのやりとりがよく判ります。
下図は、アクセス回数を表示するCGIを使ったページを表示した時のHTTPヘッダを「ieHTTPHeaders」で確認したものです。
【1】【cookieのやりとり】
上図の例では、アクセス回数の表示用に、「TARO_COUNTER」と言う名前の「cookie」を使っています。アクセスしたタイミングでブラウザから「Cookie: TARO_COUNTER=6」がサーバに送られ、サーバ(CGI)で値を「+1」して、「Set-Cookie: TARO_COUNTER=7」としてブラウザに送り返します。
【2】【cookieの保存内容】
Windowsの場合、「cookie」は、通常は、「C:\Documents and Settings\ユーザ名\Cookies」ディレクトリに格納されています。ファイル名は、「ユーザ名@ドメイン名」の様な形式です。先ほどの、「TARO_COUNTER」は、以下の様に内容でした。
TARO_COUNTER <--cookieの名前
7 <--値
www2h.biglobe.ne.jp/~hnakamur <--ドメイン名とパス名
1024 <--以下は有効期限(「Friday, 31-Dec-2100 00:00:00 GMT」が数値化)
3317760000
36736875
2144734656
29699214
*
【3】【javascriptでcookieを表示】
ブラウザのURL欄に、「javascript:document.cookie;」と入力すると、その時点で使っている「cookie」の内容を表示できます。
【4】【警告ウィンドウでcookieを表示】
ブラウザのインターネットオプションの設定で、「プライバシー」、「詳細設定」で、Cookieの処理で、「ダイアログを表示する」にチェックすると、サーバから送られてきたcookieの内容を表示できます。