Fra*_*ank 6 javascript internet-explorer cross-domain
所以我在一个域上有这个页面,脚本标记指向另一个域,每次刷新页面时,都会生成一个新的session_id.这只发生在IE上,所有其他浏览器似乎都有效.
这是一个带代码的例子(JS和PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="http://domain2.com/index.php"></script>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
在http://domain2.com/index.php上:
<?php
session_start();
header("content-type: application/x-javascript");
echo "alert('".session_id()."');";
?>
Run Code Online (Sandbox Code Playgroud)
在domain1.com/index.php中打开Chrome或Firefox,您会看到一个包含会话ID的提醒框.每次刷新时,您始终拥有相同的会话ID.在IE中(我试过7,8和9),会话ID总是不同的.cookie似乎没有正确保存.
谢谢你的帮助.
出于文档目的,这是我找到的解决方案:
我使用 IBM P3P 策略编辑器创建了一个 p3p 文件(p3p 和 CP 文件) 将文件上传到文件夹 /w3c 中,并在 domain2.com P3P 上的文件中添加以下标头: CP="来自 CP 生成文件的内容”
| 归档时间: |
|
| 查看次数: |
1451 次 |
| 最近记录: |