2014-02-17 43 views
0

我與IE 10和document.cookie中掙扎,而這種行爲對我來說是意外..意外行爲和document.cookie中

如果我在開發者控制檯中的IE 10使用此代碼

document.cookie="withactualpathanddomain=nb; path=/pathname/; domain=localhost"; 
document.cookie="withactualpath=nb; path=/pathname/;"; 
document.cookie="withpathanddomain=nb; path=/; domain=localhost"; 
document.cookie="withdomain=nb; domain=localhost"; 
document.cookie="justname=nb;"; 

瀏覽器只設置兩個cookie:「justname」和「withactualpath」。

如果我在IE 9開發者控制檯(或firebug with firefox)中這樣做,我會得到所有的cookie設置。

這是在IE10中的預期行爲?我已經在生產環境(開放域)中嘗試了這一點,結果相同。

在IE 10中,我設置了「接受所有cookie」。我無法更改此網絡(客戶)中的安全設置,安全設置可能是此問題嗎?這些設置是「中高」的互聯網,「中低」的內部網絡..

回答

1

原來,IE 10遵循W3規範verbatumhttp://www.w3.org/Protocols/rfc2109/rfc2109),不允許「localhost」作爲一個領域。所以當在本地主機上設置cookie時,修復了ommit「domain」。調整後的測試用例(餅乾名稱未因與問題的一致性而改變):

document.cookie="withactualpathanddomain=nb; path=/pathname/;"; 
document.cookie="withactualpath=nb; path=/pathname/;"; 
document.cookie="withpathanddomain=nb; path=/;"; 
document.cookie="withdomain=nb;"; 
document.cookie="justname=nb;";