Ajax对JSON服务的调用不起作用

时间:2014-03-14 12:23:35

标签: javascript jquery ajax json

我承认我对JQuery / Ajax的曝光有点受限,我试图从两个Web服务中获取JSON数据:

http://w.xaviertidus.com/Json.svc/getInServiceTransponders

http://w.xaviertidus.com/Json.svc/latestTransponderUpdates

使用以下代码:

function fetchTransponderData() {
    $.ajax({
        url: "http://w.xaviertidus.com/Json.svc/getInServiceTransponders",
        contentType: "application/json; charset=utf-8",
        data: "{}",
        dataType: "json",
        success: function (response) {
            return response;
        },
        error: function (xmlHttpRequest, textStatus, errorThrown) {
            alert(errorThrown);
        }
    });
}

function fetchFarcsData() {
    $.ajax({
        url: "http://w.xaviertidus.com/Json.svc/latestTransponderUpdates",
        contentType: "application/json; charset=utf-8",
        data: "{}",
        dataType: "json",
        success: function (response) {
            return response;
        },
        error: function (xmlHttpRequest, textStatus, errorThrown) {
            alert(errorThrown);
        }
    });
}

不幸的是它不断抛出一个错误(ajax语句中的'error'下的警报火)并且没有给我详细信息,我使用了fiddler并且它正在向web服务发出请求并自己转到它们产生预期的JSON结果

任何人都可以为我解决这个问题吗?非常感谢!

2 个答案:

答案 0 :(得分:1)

可能是跨域请求。如果是这样,您必须设置适当的标头(Access-Control-Allow-Origin:*)或使用代理服务器。

答案 1 :(得分:0)

您可以尝试使用JSONP来绕过相同的原始策略。但是,更好的选择可能是从服务器端代码调用外部站点,并依靠服务器将结果转发回客户端。