首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Facebook Graph API:如何根据应用程序过滤主页和馈送?

Facebook Graph API:如何根据应用程序过滤主页和馈送?
EN

Stack Overflow用户
提问于 2011-10-27 09:15:47
回答 3查看 17.7K关注 0票数 4

Facebook Graph API允许获取home (News Feed) & feed (Wall)的JSON表示。

我如何才能获得我的Facebook应用程序发布的帖子?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-10-27 15:11:35

现在,您可以使用Facebook Graph API (基URL:https://graph.facebook.com)运行Facebook Query Language (FQL)查询。

假设您的应用程序是Twitter。Twitter的Facebook应用程序ID是2231777543。

@danontheline's answer的帮助下,通过仔细阅读FQL stream & FQL stream_filter上的文档,我想出了下面的FQL查询。

下面的摘录特别中肯:

如果您从stream_filter FQL表或多个用户中指定一个filter_key,则返回的结果将类似于用户的主页新闻提要。如果只有一个用户被指定为source_id,您将收到该用户或页面的纵断面图。您可以通过指定filter_key‘other’(仅返回由指定用户以外的人发布的帖子)或'owner‘(仅返回由指定用户发布的帖子)来过滤这些纵断面图帖子。与主页视图不同,配置文件视图从我们的数据库返回较旧的数据。在页面的情况下,个人资料视图还包括粉丝的帖子。

Facebook新闻提要上的Twitter推文

代码语言:javascript
复制
GET /fql?q=SELECT post_id, actor_id, message, app_id, attribution FROM stream WHERE filter_key = 'app_2231777543'

Facebook墙上的Twitter推文

代码语言:javascript
复制
GET /fql?q=SELECT post_id, actor_id, message, app_id, attribution FROM stream WHERE source_id = me() AND app_id = '2231777543' LIMIT 1000

使用Facebook Graph API Explorer运行这些查询将返回Facebook Graph API post对象(结果集将根据access_token、隐私等的不同而有所不同)。您可以通过将流表的其他列添加到上面的查询中和/或简单地向GET /{post_id}发出另一个Graph API请求,以获取由上面的FQL流查询返回的每个post_id,从而了解有关每个帖子的更多信息。

票数 2
EN

Stack Overflow用户

发布于 2012-01-16 06:59:12

Facebook通过传递filter参数增加了对不使用FQL过滤me/home帖子的支持。

例如,要只获取照片,您可以这样做:me/home?filter=app_2305272732

完整的文档在这里:http://developers.facebook.com/docs/reference/api/user/#home

票数 11
EN

Stack Overflow用户

发布于 2011-10-27 09:31:52

Afaik仅使用Graph API是不可能的。但是您也可以只使用FQL语句来检索墙/提要。使用此技术,您可以将其重写为由一个actor_id发布的帖子(在本例中应为您的应用程序ID ):

代码语言:javascript
复制
SELECT post_id, target_id, message FROM stream WHERE filter_key in (SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed') AND is_hidden = 0 AND actor_id = 'MattDiPasqualesAppID'

这里的问题是,它不会返回JSON,而是返回结果的XML表示。使用phps,您可以轻松地将其转换为DOM class格式或任何其他您想要的结果表示!

因为无论如何您都可以使用PHP来处理整个问题,所以您也可以只获取json数组,将其解析为一个数组,并使用appID的键过滤该数组。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7910725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档