在我从我的链接(http://mubi-app.herokuapp.com/api/v1/home)检索数据之前,我用浏览器对它进行了测试,它是正常的。它返回Json格式,但在使用ajax访问该链接时出现错误。谢谢,
这是我的代码.
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$.ajax({
type:"GET"
, url:"http://mubi-app.herokuapp.com/api/v1/home"
, dataType:"jsonp"
, success: function(data){
debugger;
$('#result').text(data)
}
, error: function(e) {
debugger;
console.log(e)
alert(e + "Error");
}
});
});
</script>发布于 2013-06-24 12:40:23
因为它是一个跨域请求,所以您正在尝试使用jsonp请求,但要使用jsonp请求,服务器需要支持它。在这种情况下,情况似乎并非如此。
因此,我认为不可能创建对上述API的浏览器端调用。
一种可能的解决方案是为所述API编写服务器端包装器,可以在服务器端将请求委托给所述API。
发布于 2013-06-24 12:49:23
您应该创建一个jsonpcallback function来解决您的问题,例如
$(document).ready(function() {
$.ajax({
type:"GET"
, url:"http://mubi-app.herokuapp.com/api/v1/home"
, dataType:"jsonp",
jsonpCallback: "localJsonpCallback",
success: function(data){
debugger;
$('#result').text(data)
}
, error: function(e) {
debugger;
console.log(e)
alert(e + "Error");
}
});
});
function localJsonpCallback(json) {
console.log(json);
}阅读http://api.jquery.com/jquery.ajax/
请参阅this
https://stackoverflow.com/questions/17268109
复制相似问题