Cookie不能在IE中设置? [英] Cookies cannot be set in IE?

查看:94
本文介绍了Cookie不能在IE中设置?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在website1.com上有以下代码:

 < script type =text / javascript> 
document.cookie =qwe = 1;
alert(document.cookie);
< / script>

和website2.com包含:

 < iframe src =http://website1.com>< / iframe> 

当我在IE中打开网页website2.com时,它会提示空字符串(如果之前没有设置cookie )。
其他浏览器警告qwe = 1。

所以问题是为什么以及如何解决这个问题?

解决方案

这是关于IE中的安全性。

如果你想允许在IFRAME中访问cookie,你应该设置HTTP头,如下所示:

ASP。 NET:

  HttpContext.Current.Response.AddHeader(p3p,CP = \IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS我们的IND CNT \); 

JSP:

  response.addHeader(P3P,CP = \IDC DSP COR ADM DEVI TAIi PSA PSD IVAi IVDi CONi HIS我们的IND CNT \)

PHP:

 标题('P3P:CP =IDC DSP COR ADM DEVI TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'); 


I have the following code in website1.com:

<script type="text/javascript">
    document.cookie = "qwe=1";
    alert(document.cookie);
</script>

and website2.com contains:

<iframe src="http://website1.com"></iframe>

When I open the page website2.com in IE it alerts empty string (if no cookies was set before).
Other browsers alert "qwe=1".

So the question is why and how to workaround this?

解决方案

It is about security in IE.

If you want allow access to cookies in IFRAME, you should set HTTP header as follows:

ASP.NET:

HttpContext.Current.Response.AddHeader("p3p","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

JSP:

 response.addHeader("P3P","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"")

PHP:

header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

这篇关于Cookie不能在IE中设置?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆