我正在构建一个应用程序和服务器(不幸的是在不同的域)
在应用程序中,我有:
$.ajax({
url: BASE_URL + "api/create",
type: "get",
async: false, // why do I need this
dataType: "jsonp",
data: {
"auth_token": "cBQHASwKszsW4e75unK6"
},
error: function(error) {
alert(JSON.stringify(error));
},
success: function(data) {
alert(data);
}
});
我知道服务器正在返回(当我在浏览器中访问它时):
jQuery1910041686943266540766_1365730282085({"error":"User does not exist","status":400})
(正确数据)
但是,ajax请求失败,状态为"failed",类型为"pending"
我不知道这是怎么回事
我也试过了:
$.getJSON(BASE_URL + "api/create?auth_token=cBQHASwKszsW4e75unK6&callback=?", function(data) {
alert(JSON.stringify(data));
});
为此您需要创建一个代理页面。示例:proxy.php
通过ajax直接调用proxy.php
让我们知道它为你工作。
步骤:1. 创建一个新的页面proxy.php2. 使用CURL或File_get_contents从外部URL获取数据。3.通过ajax调用proxy.php代替跨域URL。