Jquery FacebookGraphAPI使用Ajax获取JSON

Jquery FacebookGraphAPI使用Ajax获取JSON,jquery,ajax,json,facebook,facebook-graph-api,Jquery,Ajax,Json,Facebook,Facebook Graph Api,这是我第一次在jQuery中使用Facebook 我得到以下错误: Uncaught SyntaxError: Unexpected token : www.facebook.com/feeds/page.php?id=20531316728&format=JSON &callback=jQuery110105899784066714346_1383828332964&_=1383828332965:2 代码 为什么我会收到这个?为什么不起作用? jQuery

这是我第一次在jQuery中使用Facebook

我得到以下错误:

Uncaught SyntaxError: Unexpected token : 
www.facebook.com/feeds/page.php?id=20531316728&format=JSON
    &callback=jQuery110105899784066714346_1383828332964&_=1383828332965:2
代码

为什么我会收到这个?

为什么不起作用? jQuery作为一个Javascript框架,必须应用Ajax请求的实现规则,更具体地说是一个。简单地说,这个限制说明只能对同一个域执行Ajax请求

此信息也可以在jQuery中找到:

由于浏览器的安全性限制,大多数Ajax请求都受到限制 同一原产地政策;请求无法成功检索 来自不同域、子域或协议的数据

变通办法 YQL:Yahoo查询语言 Yahoo查询语言是一种类似SQL的表达性语言,它允许 您可以跨Web服务查询、筛选和联接数据。有了YQL,应用程序 运行速度更快,代码行更少,网络占用更少

资料来源:

使用YQL作为代理 YQL可以用作代理,以实现跨域Ajax调用。可以在这里找到解释:

密码
我已经在使用“jsonp”了,YQL的结果是乱七八糟的。结果一个接一个地显示了帖子的标题。那是什么胡言乱语?您必须选择所需的信息。标题仅限于某些长度。标题字段在原始JSON中已被Facebook截断。
$.ajax({
    url: 'http://www.facebook.com/feeds/page.php?id=20531316728&format=JSON',
    dataType: 'jsonp'
}).done(function(data) {
    alert(data);
});
var fbUrl = "http://www.facebook.com/feeds/page.php?id=20531316728&format=JSON";

$.ajax({
    url: "http://query.yahooapis.com/v1/public/yql",
    dataType: "jsonp",
    data: {
        q: 'select * from json where url="' + fbUrl + '"',
        format: "json"
    },
    success: function (data) {
        $.each(data.query.results.json.entries, function (i, v) {
            $('#entries').append(data.query.results.json.entries[i].title + '<br />');
        });
    }
});