2008-10-14 69 views
1

摘要:使用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的網站工作正常。

+1

同樣的問題在這裏,我可以重現它與以下步驟:他們沒有啓動IE瀏覽器,但瀏覽器和導航到那裏的網站。 Explorer自動更改爲IE,但此版本已損壞,無法與父窗口共享Cookie或會話密鑰。 – 2011-01-28 14:49:35

回答

0

我的懷疑是,當從Windows資源管理器打開時(不是我完全理解你的意思),正在發回的會話cookie不會存儲在任何地方,因此不能用於包含彈出窗口與它的要求。我看不出如何解決這個問題。是不是可以告訴客戶端,這種訪問應用程序的方式不被支持?

0

我看到了與IE 8相同的問題,這些問題不會發生在Firefox,Google Chrome或IE 6中。在我的情況,我可以看到,會話實際上是工作埠身份驗證終止重定向用戶登錄頁面,他再次登錄...

+0

這正是我在我的情況下得到的行爲。我還沒有找到解決方案,但我以其他方式解決了我的問題。 您是否設法找出解決方案? 謝謝。 – 2009-06-29 09:47:23

相關問題