有沒有人知道爲什麼當我運行一個經典的asp網站和asp.net MVC並排,當我在經典asp中創建cookie,然後.net集成管道,添加path =「/」到每個人的結尾,因此創造重複。被重寫的Cookie路徑
例如。如果我使用「/ test」路徑創建兩個cookie,那麼當我運行這個經典的asp頁面時,會使用path =「/」創建另外兩個cookie。
原始頁眉看起來像這樣。
test1=aaa; path=/test
test2=bbb; path=/test
test1=aaa; path=/test; path=/
test2=bbb; path=/test; path=/
但是我只創建了test1和test2的cookie,路徑設置爲/ test。
如果關閉集成管道,我只會得到兩個正確路徑的cookie。 如果需要更多信息,請告訴我。
更新:看起來,當經典的ASP寫入cookie時,它將所有內容放入包含路徑的值中,所以當.NET讀取cookie時,它會將整個值放入值中,然後將路徑設置爲「 /'作爲默認值。這似乎只是在您寫入相同請求時訪問Cookie時出現問題。如果你不檢查Response.Cookies或Request.Cookies,這似乎不會發生。我相信這是一個錯誤,但我不知道該怎麼處理。
UPDATE2:我設置的餅乾這樣的在傳統的ASP:
Response.AddHeader("Set-Cookie", "test1=aaa; path=/test; HttpOnly;");
您能否顯示創建cookie的經典ASP代碼 – 2013-04-25 13:26:20
您如何設置cookie?這可能與此問題有關:http://connect.microsoft.com/VisualStudio/feedback/details/774743/setcookie-does-not-overwrite-cookie-written-in-module-when-using-iis-集成管道 – 2013-04-26 08:37:58
已更新問題。 – Schotime 2013-04-26 08:59:01