2017-09-16 105 views
0

这是我的函数:GET不会返回JSON对象

$.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调用不起作用?

+1

如果添加一个错误处理程序,以及,你会找出原因。我得到*“无效URL”*,这似乎是正确的 – adeneo

+0

正确的URL是:http://ec2-52-202-201-59.compute-1.amazonaws.com:8080/receipts。在代码中没问题,我不知道为什么在这里添加空格 –

+0

响应没有Access-Control-Allow-Origin响应头,因此您的浏览器阻止您的代码访问响应。如果您检查浏览器devtools控制台,您会看到浏览器记录了一条错误消息,告诉您https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS。 – sideshowbarker

回答