当脚本从另一个域加载时,无法从 PHP 读取 Internet Explorer 中的 cookie
Cannot read cookie in Internet Explorer from PHP when script is loaded from another domain
好的,这有点复杂:
-
我用php在域
foo.com
上设置了一个cookie:header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');
setcookie("c", "value", strtotime( '+30 days' ));
-
我从域
bar.com
调用脚本<script src='http://foo.com/script.php'>
,该域加载通过 php 输出的 javascript 文件header('Content-Type: application/javascript');
echo $_COOKIE['c'];
现在,当我在Chrome,Firefox,Edge或Internet Explorer中打开http://foo.com/script.php
时,它将显示value
。
当我改为从 bar.com
加载脚本时,它也会在 Chrome、Edge(!) 和 Firefox 中显示value
,但在 Internet Explorer 10/11 中,cookie 未设置且无法读取。
我不明白为什么没有在IE中设置cookie,因为我是从最初设置cookie的foo.com
加载脚本的。因此,脚本应该有权访问 cookie。
任何想法都高度赞赏。
您使用哪些本地域名来调用这些脚本?
我记得IE有时对它接受cookie的域名很特殊,它们需要至少包含一个点.
- 这样的localhost
名称往往会在这方面引起问题。
- 可以't使用ssl读取php中的cookie
- 无法读取 php 中 JavaScript 设置的 cookie
- 正在读取php文件中通过ajax发送的json对象
- jQuery Ajax 无限滚动读取 PHP
- 读取php文件
- Ajax读取PHP脚本而不是JSON输出
- 文本区域不读取 PHP 代码
- 使用 AJAX 从数组中读取 PHP 输出
- 使用 simplexml_load_string 读取 PHP 中的 XML
- Ace编辑器读取php文件得到评论
- 使用ajax读取php生成的XML文件;使用javascript输出到html
- 我的JavaScript代码无法读取PHP代码生成的JSON.出了什么问题
- 如何在html中使用json读取php数据
- 读取PHP或AJAX中的按键
- 如何在smarty中读取PHP数组到Java脚本变量
- 从JavaScript中读取PHP cookie
- 浏览器无法读取PHP生成的CSS文件
- 如何让JS读取PHP抛出的代码
- 在js中读取php变量
- Javascript读取PHP函数