这是我的功能:
$.ajax({
url: 'http://ec2-52-202-201-59.compute-1.amazonaws.com:8080 /receipts',
dataType: 'application/json',
complete: function(data){
console.log(data)
},
success: function(data){
alert(data)
}
});
该功能永远不会成功,而且数据中包含的对象也是如此 如下:
Object { readyState: 0, getResponseHeader: getResponseHeader(), getAllResponseHeaders: getAllResponseHeaders(), setRequestHeader: setRequestHeader(), overrideMimeType: overrideMimeType(), statusCode: statusCode(), abort: abort(), state: state(), always: always(), catch: catch(), 8 more… }
如果我在该链接上浏览器,我可以看到JSON文件。同样,如果我进入我的控制台,GET请求就完成了,我可以在响应正文中看到我需要的JSON对象。
为什么Ajax调用不起作用?
答案 0 :(得分:0)
我试图运行你的例子,我得到了这个:
XMLHttpRequest无法加载http://ec2-52-202-201-59.compute-1.amazonaws.com:8080/receipts。对预检请求的响应没有通过访问控制检查:否'访问控制 - 允许 - 来源'标头出现在请求的资源上。起源' http://localhost'因此不允许访问。
这似乎是一个cross-domain问题。检查服务器中的配置。
亚马逊有一些关于它的documentation