PR
Calendar
Category
Comments
Keyword Search
おこんばんは!
先日、Cookie
っちゅうことで、今日は "Cookie" について。
先日、 『あぁ、Cookie!』 っちゅう話を書いた。
その時に実装したかったんは次の通り。
結論から言うと、上記処理は不可能。なんぼCookie書き込み処理をCookie呼び出し処理の上に置いたって、無理なモンは無理。
ちょっと考えてみたら、その理由は簡単。上の処理を実装するには、以下のようにサーバとクライアントを行き来せなあかんから。
上記のように、サーバがCookie書き込み命令をだしてからクライアントがCookie取得するまでの間に1回サーバに戻らなあかんから、1回のCGI実行で実装できるはずがない。
そこで、前回の『あぁ、Cookie!』を書いた時は、最初のフォーム送信時にJavaScriptでフォーム内容をCookieを書き込んでからフォーム送信しようと考えた。つまり、こんな感じ。
けど、ここでJavaScriptによる日本語URIエンコードにつまずいたんやね!色々調べた結果、JavaScriptでは十分に信頼できる日本語URIエンコードは期待できへん、っちゅう結論に到った。
で、色々悩んで、 「CGIでリダイレクトできへんか?」 って考えた。つまり、上記の『 ~CGIによるCookie書き込み~ 』の手順3.でHTMLを表示することなく手順4.の処理に飛ばれへんか、ってこと。
調べてみたら、あっさり答えが見付かった!
CGI(Perl)で、 『print "Location: リダイレクトしたいURL\n\n"』
でリダイレクト可能!
色々悩みまくってこの結論を考え付いたけど、よくよく考えてみりゃあ、PerlでなんぼでもHTTPの情報をいじくれるんやから、リダイレクトぐらいなんでもないはずやね!なんでこんな遠回りしてしもたんやろ?
もし同じような悩み抱えとる人がおったら、参考にしてみてちょ!
ほなほな!
無常な日常 Vol.817 - ブログ終了!? 2009.09.02 コメント(2)
無常な日常 Vol.816 - くまくま 2009.09.01
無常な日常 Vol.815 - 自民党大敗 2009.08.31