小编Edw*_*erd的帖子

为什么不设置document.domain来允许AJAX请求到父域?

我有两个文件,domain.com/test2.php:

<div id="testDiv"></div>

<script src="http://domain.com/packages/jquery.js"></script>
<script>$("#testDiv").load("http://domain.com/test3.php", {var1:1, var2:2});</script>
Run Code Online (Sandbox Code Playgroud)

和domain.com/test3.php:

<b>var1: <?php echo $var1; ?> , var2: <?php echo $var2; ?></b>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,domain.com/test2.php输出 var1: 1 , var2: 2正如人们所期望的那样,但现在让我说我想在子域中创建一个test2.php.要停止跨域脚本编写的问题,我会将这个额外的行添加到sub.domain.com/test2.php的开头:

<script>document.domain = "domain.com";</script>
Run Code Online (Sandbox Code Playgroud)

此额外行阻止跨域错误显示,但现在文件不再输出var1: 1 , var2: 2.为什么这样,我该如何解决这个问题?

javascript ajax cross-domain cors

6
推荐指数
1
解决办法
5003
查看次数

标签 统计

ajax ×1

cors ×1

cross-domain ×1

javascript ×1