質問

誰かがSet-Cookieヘッダーが解析されているFirefoxのソースコードに私を指していますか?正確な動作を理解したいです。

あなたがなぜ知りたいのならさらに読んでいますか? 私のアプリケーションでさまざまな制約については、1つのSet-Cookieヘッダーの中に複数のクッキーを渡す必要があります。 RFC-2109は明らかに言及されている、

"Set-Cookie Responseヘッダーは、トークン・セット・クッキー:1つ以上のクッキーのコンマ区切りリストを備えています。各Cookieはname= valueペアで始まり、続いて0個以上のセミコロン区切りを続けます。属性値ペア "

だから私はSet-Cookieヘッダー

を続けることができるはずです

set-cookie:name1= value1; attr11= attrval11; attr12= attrval12、name2= value2; attr21= attrval21; attr22= attrval22;

うまくいきません。ただし、以下の作業

です

set-cookie:name1= value1、name2= value2; attr1= attrval1; attr2= attrval2;

そして、私はさまざまなクッキーにさまざまな属性を与えたいです。

[更新]

実際の例

例1 -

set-cookie:cookie1= value1; path= /、cookie2= value2;パス= /

この場合Firefoxは最初のCookie(名前が "cookie1"であり、値が "value1")で、そのうちの "value1")は(2番目のものは完全に無視されます)

例2 -

set-cookie:cookie1= value1、cookie2= value2;パス= /

この場合Firefoxは、名前が "cookie1"で、値が "value1、cookie2= value2"であるクッキーが1つあると考えています。これは、やはり、意図されていたものではありません。

役に立ちましたか?

解決

mxr メインロジックはnsCookieService::SetCookieInternalを。必要に応じて前後にリンクをたどることができます。あなたの実際の問題に関しては、あなたが本物の例示的なヘッダーを与えるならば、それは助けるかもしれません。

他のヒント

私の理解は、ブラウザがSet-Cookieヘッダーごとに複数のクッキーに関して標準を異なる方法で実装することです。ただし、複数のCookieの値を設定するために複数のSet-Cookieヘッダーを送信できます。

Set-Cookie: name1=value1; attr11=attrval11; attr12=attrval12
Set-Cookie: name2=value2; attr21=attrval21; attr22=attrval22
.

あなたがあなたのフレームワーク(PHP、ASP.NET、RORなど)を提供するのではなく、手動でヘッダーにヘッダーをヘッダーにヘッダーしているのは何らかの理由はありますか?

まあ、ソースコードからの読み出しFirefoxがこの点でRFC-2109を実装していないことを明確にし、Cookieセパレータとして '、'の代わりにCRまたはLFを使用していることを明確にします( http://mxr.mozilla.org/mozilla-central/source/Netwerk/cookie/nscookieservice.cpp )Firefox v3.6.6の両方で試してみましたが、CRは機能していますが、LFはそうではありません。

結論:Firefoxでは、CRODの代わりにCRを使用してクッキーを区別できます。

グリッチ:(Cr、LF、 '、')のうちどれもインターネットエクスプローラで取り組んでいます。今、誰かが私がCookieセパレータとして使用しているものを見ることができるIEのためのコードを「ソース」コードに指していることができます: - )

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top