CGIのクッキー

RubyCGIでのクッキーの扱いについてまとめてみると。
input = CGI.new
で得られるinputがHashでないのは以前にも書いた。
そこからクッキーを得るには
cookie = input.cookies
となり、このcookieはHash。
なんとなく試しに
puts cookie.to_s
としてみると、どこから出てきたか知らないけどpath=が出てきたりする。
なぜかというと、そのHashに格納されているのがCGI::Cookieだから。


値を得るには「cookie.value」とすればよい。
cookie.value.to_s」とした場合と「cookie.to_s」
とした場合の文字列が違うように見えるのは
cookie.valueとしたときに自動的にURI.unescapeされているからだろう。