摘要:使用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