'jQuery.getJSON'无法在Internet Explorer 8中运行

时间:2011-12-10 12:51:43

标签: jquery facebook getjson

我正在使用jQuery.getJSON来获取Facebook好友列表,但我没有得到它。它在Firefox和Chrome中运行良好,但在Internet Explorer 8中无效。

jQuery.getJSON("https://graph.facebook.com/me/friends?access_token="+aToken,
    function(data) {
        alert(data);
    }
);

在做了一些研究后,我也尝试了这段代码:

jQuery.ajax({
    url:"https://graph.facebook.com/me/friends?access_token="+aToken,
    type: 'json',
    success: function(json) {
        alert(json);
    }
});

3 个答案:

答案 0 :(得分:8)

Internet Explorer 8不支持jQuery正在使用的XMLHttpRequest对象中的CORS。 Internet Explorer 8使用的XDomainRequest object默认为jQuery doesn't support

答案 1 :(得分:7)

尝试此操作来处理错误:

jQuery.getJSON("https://graph.facebook.com/me/friends?access_token=" + aToken, 
    function(data) {
        alert(data);
    }
)
.error(function(jqXHR, textStatus, errorThrown) { alert(errorThrown); });

在你的代码中尝试这个hack(根据下面的评论)

jQuery.support.cors = true;

答案 2 :(得分:3)

我使用Jason Moon脚本完全解决了这个问题,这里

https://github.com/MoonScript/jQuery-ajaxTransport-XDomainRequest/blob/master/jQuery.XDomainRequest.js

希望它有所帮助。