【发布时间】:2011-06-11 15:52:25
【问题描述】:
我的主域上有我的 JavaScript 文件,我想从子域进行一些调用。
我已添加:
url: "http://domain.com/ajax.php"
所以完整的代码是:
$.ajax({
type: "POST",
url: "http://domain.com/ajax.php",
data: {
var1: var1,
var2: var2
},
success: function(data){
}
});
但在 Firebug 上,它会将请求显示为 red 并且无法响应。 POST 参数也应有尽有。
我应该在子域上创建一个新的 JS 文件并添加必要的代码并从那里执行 AJAX 调用吗?
编辑:使用 JSONP 代码
我在localhost/ajax.php 上使用它,我从sub.localhost 调用它
$.ajax({
dataType: 'jsonp',
data: 'id=10',
jsonp: 'jsonp_callback',
url: 'http://localhost/ajax.php',
success: function (data) {
console.log(data);
},
});
并且 ajax.php 包含:
<?php
echo $_GET["id"];
?>
【问题讨论】:
-
这两个域是什么?你的服务器出错了吗?
-
目前我在 localhost 进行测试,没有错误,只是没有返回任何内容。
-
尝试在实际域上进行测试。 localhost 到域的问题更多,但请参阅下面的可能解决方案。
标签: javascript jquery ajax cross-domain