M.C.P.C.

―むり・くり―プラスコミュニケーション(更新終了)


| トップページ |

2004年10月16日 03:18

Cookieは自家製が一番

このエントリーをはてなブックマークに追加 mixiチェック

パソコン・インターネットのアイコン通信入稿の Safari 対応はしましたが、ついでに、Cookie で送信フォームに毎回入れなくてはいけない情報を記憶しておいて、次回から自動的に入力するようにも変更していました。

最初、CGI の http のヘッダに、Set-Cookie: で Cookie 作って、html の方で Cookie を受信するように作っていたんですけれども、Cookie に入れる値って 日本語は 7 bit にエンコードしなきゃダメ! ていうことらしいじゃないですか、実際、生のままだとユーザエージェントによって化け化けでしたし。つうわけで、CGI で URL エンコーディングして、html の JavaScript で デコードしようと思ったのですけれども、ブラウザによって基底となる文字コードが違うので、CGI側で決め打ちのエンコードをしてしまうと、ブラウザ側でデコードできないというアホなことになりました。

ここで、ちょっと頭を切り替えたら、CGI で Cookie 生成するのは別にかっこよくないですから、ていうことに気づきました。2時間かかりました。ここら辺のセンスは欠如していると思います。

というわけで、Cookie は html 内の送信フォームのところで作って、送信フォーム自身が JavaScript で受信するようにすれば、エンコーディングも、デコーディングもブラウザ自身の JavaScript (escape/unescape)で行えるし、自分で escape したものが unescape できないダメダメブラウザは存在していないハズだし、Cookie 自身、ブラウザ毎の管理ですから、IE が ロカルに保存している Cookie を Safari が該当ページで勝手に使ってしまうこともなく、問題ないのですね。

Cookie は、いまどきはあちこちにフツーに実装されているので、つけたからどうってことにはなりませんが、僕自身の勉強になりましたとさ。 とりあえず、html のソースはむりくり感に溢れています。

ところで、ヴェルターズオリジナルって喰ったことないがうまいのかしら。かけがえのない存在なのかしら。

投稿 大野 義貴 [パソコン・インターネット] | |

トラックバック(0)

トラックバックURL: http://blog.dtpwiki.jp/MTOS/mt-tb.cgi/449

コメントする