[2] [[HTTP]] の [DFN[[CODE(HTTP)@en[[[Cookie2:]]]] [[要求頭欄]]]]は、 [[利用者エージェント]]が対応している [[Cookie]] 仕様の最高の版を示します。 * 仕様書 [REFS[ - [3] [[RFC 2965]] -- [4] [CSECTION@en[3.3.5 Identifying What Version is Understood: Cookie2]] -- [10] [CSECTION@en[9.1 Compatibility with Existing Implementations]] - [14] [CITE@en[RFC 6265 - HTTP State Management Mechanism]] ([TIME[2012-03-01 09:57:02 +09:00]] 版) ]REFS] * 代替 [15] この[[ヘッダー]]は現実にはほとんど利用されておらず、 [[RFC 6265]] により廃止されました [SRC[>>14]]。 * 構文 [5] この[[欄]]には [[Cookie]] の版を[[整数]]で指定します。 [[RFC 2965]] の版は [CODE(HTTP)[[[1]]]] です [SRC[>>4]]。 ;; [12] >>10 にある例示では「[CODE(HTTP)@en[Cookie2: $Version="1"]]」のようになっていて、 矛盾しています。 * 処理モデル [6] [[クライアント]]は、 [CODE(HTTP)@en[[[Cookie:]]]] 欄を使って1つ以上の [[Cookie]] を送る場合であって、その [CODE(HTTP)@en[[[$Version]]]] が[[クライアント]]の理解する [[Cookie]] の版と異なる場合にあっては、[[クライアント]]が理解する最高の [[Cookie]] の版を [CODE(HTTP)@en[[[Cookie2:]]]] 欄に含めなければ[['''なりません''']] [SRC[>>4]]。 ;; [8] どうも [[RFC 2965]] には (その前の [[RFC 2109]] にも) 理解できない [CODE(HTTP)@en[[[Version]]]] の [[Cookie]] は廃棄しなければならないという規定は無いようなので、 「異なる」というのは 0 だったり 2 だったり、1 以外すべてですね。。。 仮に[[利用者エージェント]]が版 1 と版 4 を理解するとしたら、1 だけを送出するときは [CODE(HTTP)[[[Cookie2:]]]] を使う必要なない、と。 5 を送出するときは使う必要があるけど。 [9] [CODE(HTTP)@en[[[Cookie2:]]]] を使った [[Netscape Cookie]] から [[RFC 2965]] への [[Cookie]] へのアップグレードの方法は次の通りです。 - [11] [[RFC 2965]] に対応した[[利用エージェント]]が [CODE(HTTP)@en[[[Set-Cookie:]]]] [[頭欄]]だけ ([CODE(HTTP)@en[[[Set-Cookie2:]]]] [[頭欄]]なし) を受け取ったときは、 [[Netscape Cookie]] の [CODE(HTTP)@en[[[Cookie:]]]] [[頭欄]]に加えて [PRE(HTTP example code)[ [[Cookie2]]: [[$Version]]="1" ]PRE] のような [CODE(HTTP)@en[[[Cookie2:]]]] [[頭欄]]を送る[['''べきです''']] [SRC[>>10]]。 - [13] [[RFC 2965]] に対応した[[起源鯖]]が >>11 のような [CODE(HTTP)@en[[[Cookie2:]]]] [[頭欄]]を受け取ったときは、 [CODE(HTTP)@en[[[Set-Cookie:]]]] にかわって [CODE(HTTP)@en[[[Set-Cookie2:]]]] を使い[[セッション]]を続行する[['''べきです''']] [SRC[>>10]]。 * メモ [7] [CODE(HTTP)@en[[[Cookie2:]]]] なんていう名前だから [CODE(HTTP)@en[[[Cookie:]]]] の代替かと思いきや、単に版番号を書くだけなんですね。。。 [1] [CODE(HTTP)[Cookie2]] 欄なんて対応している UA あるのかよ?と思っていましたけど、ほどほどの頻度で観測されていますね。どんな UA が実装しているのだろう。 ([[名無しさん]] [WEAK[2004-04-02 01:27:23 +00:00]]) [16] [CITE[HTTP::Cookies - search.cpan.org]] ( ([TIME[2012-03-04 00:36:16 +09:00]] 版)) [17] [CITE[252342 – fix cookie domain checks to not allow .co.uk]] ( ([TIME[2012-03-25 11:29:16 +09:00]] 版))