摘要:使用Windows資源管理器瀏覽ASP.NET網站時,彈出式窗口不會從父窗口「借用」會話cookie。ASP.NET:彈出瀏覽器窗口和會話cookie
詳細信息:
我正在研究ASP.NET網站(.NET 2.0)。我使用FormsAuthentication。這是使用cookie來處理會話的要求。
在頁面上我有一個按鈕。當用戶點擊它時,會打開一個彈出窗口。彈出窗口顯示一個使用會話變量的ASPX頁面,以前在父瀏覽器窗口中設置。我一直在使用IE(6,7,8)和Firefox 2.0測試網站。在所有這些瀏覽器中,彈出窗口都可以訪問與父瀏覽器窗口相同的會話,並且一切正常。
我現在有一個客戶端提出的錯誤,指出彈出窗口顯示錯誤。查看日誌文件,我可以看到在彈出頁面嘗試訪問會話變量時它是一個NullReferenceException。與客戶交談時,他說他在Windows資源管理器中打開主網站!
我設法在測試機器上重新創建問題,並看到彈出窗口正在使用新的會話。
該機器必須安裝Win XP的IE6! IE7的網站工作正常。
同樣的問題在這裏,我可以重現它與以下步驟:他們沒有啓動IE瀏覽器,但瀏覽器和導航到那裏的網站。 Explorer自動更改爲IE,但此版本已損壞,無法與父窗口共享Cookie或會話密鑰。 – 2011-01-28 14:49:35