1. ホーム
  2. http

[解決済み] 同じ名前の複数のクッキーを処理する方法は?

2022-11-28 04:44:21

質問

例えば、私が以下のHTTPヘッダを送信し、"a"という名前のクッキーに設定するアプリケーションを持っていたとします。

Set-Cookie: a=1;Path=/;Version=1
Set-Cookie: a=2;Path=/example;Version=1

もし私が /example にアクセスすると、両方のパスが有効なので、"a" という名前の2つのクッキーがあります! ブラウザはパス情報を送信しないので、2つのクッキーを区別することはできません。

Cookie: a=2; a=1

このケースはどのように処理されるべきでしょうか?最初のものを選びますか?すべてのCookieの値でリストを作成しますか?それとも、このようなケースは開発者のミスと考えるべきでしょうか?

どのように解決するのでしょうか?

から この記事はSitePointにあります。 :

<ブロッククオート

同じ名前の複数のクッキーが与えられたリクエストURIにマッチする場合、ブラウザによって1つが選択されます。

より具体的なパスであればあるほど、より高い優先順位となります。しかし、ドメインを含む他の属性に基づく優先順位は指定されておらず、ブラウザによって異なる場合があります。つまり、「.example.org」と「www.example.org」に対して同じ名前のクッキーを設定した場合、どちらが送り返されるかはわからないということです。

編集: 2010年のこの情報は古いようです。ブラウザは現在、複数のクッキーを返送することができるようです。