On Fri, Sep 13, 2002 at 08:02:02AM +0900, m_seki / mva.biglobe.ne.jp wrote: > IRCで教えてもらったのですが、クッキーのmax-ageを使えば > ローカルの時計の秒数で指定できるようです。 > > max-ageの方がexpiresより使い勝手が良さそうですよね。 > # max-ageにはなにか問題があるのかな。あんまり対応されてないとか!?? とりあえず、cgi.rb が対応していないのは、実績のある Perl の CGI.pm が 対応していないから、というだけだったりしますが、では CGI.pm が対応して いない理由は、というと、対応していないブラウザが多いから、という事のよ うです。 Cookie は元々 Netscape の独自拡張で、その仕様では max-age は無く、 expires でした。 http://wp.netscape.com/newsref/std/cookie_spec.html ところが RFC では期限を日付指定する expires は採用されず、発行後の秒数 で指定する max-age となったようです。日付については ruby-ML でも何度も 話題になっているように、扱いが難しい面があるからなのでしょうね。 ですが、日付指定したいという場合が多いのか、すでに expires が浸透して しまったからか、max-age の対応は進まず、expires が使われ続けている、と いう感じのようです。 > ruby-1.6.7のCGI::Cookieではmax-ageは扱ってないようですが、 > 扱う予定はあるでしょうか? 最新の CGI.pm も開発版の CGI.pm もまだ対応する様子が無いのですが、 まあ、RFC にある事ですから、扱えるようにしたいと思います。しかし、 ちょっと検索してみると、 http://www.m-fr.net/etc/cookie.html > 少なくとも、WindowsでIEの5.5、NNの4.76、6.02、Operaと試しまくってみ > たのですが、概ねペケです。 このあたりまで対応していないとなると、あまり実用にはならないかもしれま せんね。 -- 青山 和光 Wakou Aoyama <wakou / ruby-lang.org>