javascript - IE不能设置cookies?

标签 javascript html cookies internet-explorer-9

我在 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 header :

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"');

关于javascript - IE不能设置cookies?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8061450/

相关文章:

javascript - 在堆叠水平条形图中如何删除 Chart.js 中的垂直线?

html - 相对于其原始高度降低 div 高度

javascript - 选择时 d3 堆栈条形图的边框

浏览器关闭后 PHP Cookie 丢失 - 浏览器 = 默认设置

iphone - 写入钥匙串(keychain)失败

javascript - 实现顺序回调执行

javascript - 如何使用 Backbone.js/Javascript 前端实现 Oauth/OpenID/自定义身份验证?

javascript - console.log 打印数据两次 [reactjs]

javascript - Bootstrap 选项卡作为移动选项卡

javascript - $resource 删除功能没有按预期工作?