Cookieの有効な利用方法
技術的にはCookieをどのように扱うかを知ることができましたが、実際のプログラムの中でどのように使っていくかということが重要です。上手に使えば、かなり効果的なページを作ることもできます。
掲示板等フォーム入力時の前回の書き込みの内容の記録
普段のインターネットで一番目にするのがこれかもしれません。掲示板などの書き込みを行った場合に、次回その掲示板を訪問したとき自分の名前やメールアドレスが既に記録されていて便利・・・(こわい?)と思ったことはないでしょうか。これもCookieを利用しています。
最初の書き込みで再度入力する可能性のある情報をCookieとして保存して、2回目以降に表示します。ぱっと見たときには自分の情報がそのホームページで管理されているような錯覚を覚えますが、実際には自分のブラウザから読み出されているだけなのです。
パスワード認証におけるセッションの保持として利用
おそらく、最近のウェブアプリケーションで一番よく使われているのがパスワード認証を行った場合のセッション保持としての利用だと思います。セッションの保持でも書きましたが、HTTPというのはステートレスな通信ですので、リクエストをするたびに誰が通信するということを気にしません。よって、それ以外の方法、以前はHIDDEN属性などで先ほどの通信と今の通信が連続しているという状態を教える必要があります。
HIDDEN属性なら、画面が変わるたびにHTMLとしてHIDDEN属性に対してパスワードまたはセッションIDのようなものを書き出す必要がありますが、Cookieに埋め込めば利用者が意識することなく、セッションのチェックを行うことが可能になります。
どのようにCookieを利用するべきかはアイディア次第という部分も多数あるので、今後気がついた時点でいろいろと実験していきたいと思います。
Cookieを利用する場合の注意点
これまでいろいろ便利な面を見てきましたが、注意点もいくつかあります。
まずCookieは利用者側で受け取りを拒否することが可能であるということです。よって、受け取りを拒否されてしまうと、Cookieを使った仕組みだけに依存している場合、プログラムがうまく動かないということが想定されます。先ほどの例でいうなら、パスワード認証におけるセッション保持の場合がそうですね。
このような場合には、最初にCookieを利用しないとその機能も利用できないこと、また、受け入れるような設定になっていない場合にはエラーメッセージでCookieを受け入れるように促すことも必要になってきます。
プライバシー云々として誤解を受けることが多いCookieですので、あくまでも利用者の利益のために利用しているということを説明しておくといいのかもしれません。
あと、追記ですが、Cookieが書き込める範囲、読み込める範囲についての実験も公開していますので、 参考までにどうぞ。
(更新2005/2/12)





