[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: cookie



At 25 Mar 2002 02:13:34 +0900,
Kiyokazu SUTO wrote:
> 
> > Set-Cookie: stored=foo; path=/foo/bar; expires=Monday, 25-Mar-04 00:35:50 JST
> > Set-Cookie: temporal=bar; path=/foo/bar
> >
> > のようなのが来たとき、
> 
> この場合は
> 
> Citation (with leading "| " of each line) from article:
>   <m3zo0yruac.wl@gohome.org>
>     by Yuuichi Teranishi <teranisi@gohome.org> :
> | (*1) http://www.netscape.com/newsref/std/cookie_spec.html
> 
> によると、1個の「Cookie:」ヘッダに2つのcookieを入れなきゃいけないよう
> なので
> 
> > Cookie: stored=foo
> > Cookie2: $Version="1"
> > Cookie: temporal=bar
> 
> のようなリクエストを生成するのは間違いではないですか。

うー、確かに…。

> # w3m{,mee}が「store=foo」しか入れないのも間違っているような。

Cookie: temporal=bar; stored=foo

が付くべきということでしょうか?

Expires がないクッキーはユーザセッションの終了と同時に消さないといけな
いので、すぐに終了してしまう -dump_extra の場合は temporal=bar は保存
されず、次のリクエストにも付けられないというのは w3m としては予期され
る挙動のように思います。

> もし私の理解が正しければ、emacs-w3m独自のcookie対応を入れるのであれば、
> w3m{,mee}には必ず「-no-cookie」を渡して、すべてemacs-w3m側で処理する必
> 要がある筈です。

そんな気がしてきました。

> > w3mmee だと、同様の指定をしても
> >
> > Cookie: stored=foo
> > Cookie2: $Version="1"
> >
> > しか出ないようです。
> 
> いくつかのヘッダについては「-header」による指定を無視またはw3mmee側で
> 上書きしますが、その中に「Cookie:」も含まれています(これが意図していた
> 仕様)。
> 
> ただし今のw3mmeeで出ないのは、コマンドラインオプションとして「-header」
> と「-o」の両方が使われていると、「-header」による指定が(「Cookie:」に
> 限らずすべて)消えてしまうというバグが原因です。
> 
> # 「-no-cookie」の場合は、「Cookie:」と「Cookie2:」の特別扱いをやめる
> # ように変更しようと思います。

というわけで、出直してきます。
結局、まとめると

・cookie はすべて emacs-w3m 側で面倒みる。
・w3m は -no-cookie で呼び出し、-header オプションで Cookie: を指定する。

のようにするべしってことですね…。

--
Yuuichi Teranishi (寺西裕一) <teranisi@gohome.org>
PGP 5.0i Public Key: http://www.gohome.org/pgp5/teranisi.key
"There will be an answer, let it be..."