无论如何要求Facebook的Graph API中的特定值不使用FQL?

时间:2012-10-07 10:49:23

标签: facebook-graph-api

e.g。

FB.api('/me/permissions="user_photos"', function (response) { });

而不是

FB.api({ method: 'fql.query', query: 'SELECT user_photos FROM permissions WHERE uid=me()' }, function(resp) {
    for(var key in resp[0]) {
        if(resp[0][key] === "1")
            console.log(key+' is granted')
        else
            console.log(key+' is not granted')
    }
});

1 个答案:

答案 0 :(得分:0)

是的,Theres是一种称为图表api选择的方式或更多提前field expansion

您可以使用“fields”查询参数选择要返回的字段(或连接),例如:

FB.api('/me/permissions?fields=user_photos', function (response) { });

图形API资源管理器Demo

修改 直接引自图api doc:

  

<强>选择

     

默认情况下,进行查询时会返回大多数对象属性。   您可以选择要返回的字段(或连接)   “fields”查询参数。例如,此URL仅返回   本的名字,名字和图片:   https://graph.facebook.com/bgolub?fields=id,name,picture

     

您还可以使用。在单个查询中请求多个对象   “ids”查询参数。例如,URL   https://graph.facebook.com?ids=arjun,vernal会返回两个配置文件   同样的回应。

     

“ids”查询参数也接受网址。这很有用   在Open Graph中查找URL的ID。例如:   https://graph.facebook.com/?ids=http://www.imdb.com/title/tt0117500/

     

此外,还有一个特殊的标识符,我指的是   当前用户。所以URL https://graph.facebook.com/me返回   活跃用户的个人资料。

     

通过/ home,/ feed或/ posts连接检索帖子时,您   可以将结果限制为仅附加位置的结果   在URL参数中添加= location:

     

https://graph.facebook.com/me/home?with=location

来源:Graph API Docs