在Internet Explorer上的iFrame中访问域Cookie

时间:2020-03-06 14:24:05  来源:igfitidea点击:

我的域(我们称其为www.example.com)创建了一个cookie。
在另一个网站上(例如,www.myspace.com),我的域已加载到iFrame中。

在Internet Explorer以外的所有浏览器(Firefox,Opera,Camino,Safari等)上,我都可以访问自己的cookie。在IE中,它无法让我从iFrame中访问Cookie。

有办法解决这个问题吗?

确实,这没有任何意义,因为尝试访问Cookie的站点是www.example.com,而该cookie由www.example.com拥有。但是由于某种原因,IE认为iFrame使其与它们无关。

解决方案

Internet Explorer的默认隐私设置意味着,第三方Cookie(例如iframe中的Cookie)与第一方Cookie的处理方式有所不同。 (默认情况下,第三方Cookie会被静默拒绝)。

为了使IE6在iframe中接受Cookie,我们需要确保网站提供的是P3P紧凑型标头。

有关更多信息,请参见http://msdn.microsoft.com/zh-cn/library/ms537343.aspx。

对我来说,这听起来像是一个隐私设置问题。或者增加IE中的安全设置(我们将无法说服用户这样做),或者采取另一种方法。

在PHP中:
标头(" p3p:CP = " IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT "");