我在其他网站的IFrame中使用我的网站。
一切正常,但我面临IE浏览器的问题。
Cookie未在IE浏览器中保存。
我尝试过使用其他浏览器(Chrom,Firefox等)并使用相同的代码正常工作。
当我直接运行我的网站时,相同的代码也在IE中工作。
以下是我放置的IFrame的代码片段。
<iframe id="myiFrame" src="mywebsite.com "
style="border:0px;-webkit-overflow-scrolling: touch;overflow:
auto; fub;" name="myiFrame" scrolling="no" frameborder="0" marginheight="0" marginwidth="0" height="1220" width="100%" seamless > </iframe>
以下是保存Cookie的代码段
System.Web.HttpContext.Current.Response.Cookies(fname).Value = fval
System.Web.HttpContext.Current.Response.Cookies(fname).Expires = DateTime.Now.AddDays(fdays)
请就此提出建议。
欢迎就此问题做出任何回应。
如果您对此有任何疑虑或疑问,请与我们联系。
由于 Advay Pandya
答案 0 :(得分:1)
我对此做了更多研究并得到了解决方案。它现在正在工作。
请找到我为解决问题而采取的步骤:
1)生成p3p策略文件。请参阅以下链接并按照相同的步骤操作。他们以非常简单的方式解释过。
http://www.jinweijie.com/asp-net/fix-ie-blocking-iframe-cookies-problem/[ ^]
2)我们需要3个文件:.xml,.p3p和.txt。上面的链接将有助于生成所有3个文件
3)在网站的根路径中创建一个目录(w3c)。
4)将所有3个文件放在目录中(p3p.xml,privacy_policy.p3p和privacy_policy.txt)注意:文件名无关紧要。只有比赛很重要。
5)在母版页面加载中添加请求标题
VB
HttpContext.Current.Response.AddHeader("p3p", "CP=" & ControlChars.Quote & "IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT" & ControlChars.Quote & "")
C#
HttpContext.Current.Response.AddHeader ("p3p", "CP = \" IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT \ "");
6)现在,清除IE的所有cookie并重新启动浏览器。
完成上述所有步骤后,它将继续工作。
如果有人想要更加迅速,请告诉我。
谢谢,
Advay Pandya