4

我想使用我从中获取 JSON 数据的 webService

    $.ajax({
    type: 'GET',
    contentType: 'application/json',
    dataType: 'JSON-P',
    //the url shows the correct JSON Data when I copy the URL in my browser
    url: 'http://url.com',
    success: function(data){
        console.log(data);
        alert(data);
    },
       error: function(xhr, testStatus, error){console.log("Error occured: "+error+" "+xhr+" "+testStatus)}
})

在 Firefox 中,它使用错误函数回调,但我不知道问题出在哪里,知道错误消息会很棒,但我的方法不起作用。提前致谢

编辑:在 Chrome 中我收到以下错误:

Access-Control-Allow-Origin 不允许 Origin null。

编辑:解决了,问题确实是json不能跨站点工作,并且数据不是“jsonp-conform”(它必须设置一个函数(json data ...))围绕json数据。这可以通过更改末尾的 url "_&jsonp=successCallback 来完成。抱歉打扰您了

4

2 回答 2

1

我认为存在 JSON 对象语法错误。使用jsonlint.com检查您的 JSON 对象语法错误。

于 2012-06-05T12:18:47.517 回答
0

您是否在本地收到此错误?

在服务器上尝试,如果它不起作用:XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin

于 2012-06-05T11:57:12.300 回答