在朋友的墙上发布所有帖子

时间:2011-08-26 03:40:30

标签: facebook facebook-wall

我正在尝试找到一个API调用(或一组调用),它允许应用获取在查看朋友的墙时会看到的帖子。 REST调用或FQL调用都可以。

我尝试/提交和/发布,将结果与我在朋友的墙上看到的结果进行比较,我得到的结果不完整。

我知道这是可能的,因为像Friendly这样的应用程序可以做到这一点。

任何提示?

4 个答案:

答案 0 :(得分:7)

嗯,有两个不同的API端点用于查询给定用户的帖子; homefeed。 Home包含来自其他人和页面的帖子(基本上是您在登录和访问主页时看到的内容),feed是用户共享的内容。假设您的应用程序已对用户进行了身份验证并且他们已经允许read_stream权限,那么您可以使用其访问令牌对Graph API进行查询:

https://graph.facebook.com/{SOME_USER_NAME}/home?access_token={SOME_ACCESS_TOKEN}

https://graph.facebook.com/{SOME_USER_NAME}/feed?access_token={SOME_ACCESS_TOKEN}

我能给你的唯一提示是“不完整”是Facebook API的标准。你只能用他们给你的东西尽力而为。计数将是错误的。数据将是错误的。这是一个波动的,移动的目标,所以代码就是这个事实。

答案 1 :(得分:2)

您可以通过检索给定用户ID的read_streampublish_stream来与帖子进行互动。

获得您感兴趣的用户ID后,您可以使用FQL从您拥有权限的流中检索帖子。

This stackoverflow answer详细介绍了Facebook开发者网站上的文档。

答案 2 :(得分:2)

我们这样做:

1)我们使用Facebook平台PHP5客户端

2)然后你做的是:

$this->facebook = new facebook($key, $secret);
$out = $this->facebook->api_client->call_method("facebook.stream.get", array('viewer_id'=>0, 'source_ids'=>$uid, 'limit'=>$limit));

然后只使用out进行操作,其中包含所询问页面上的所有帖子。

但是,afaik,它只适用于网页,而不适用于普通用户。但是就这样找到答案。

答案 3 :(得分:0)

您应该对https://graph.facebook.com/进行图表调用< FBID> / status?access_token = xxxxx

此处access_token应具有read_stream权限和offline_access权限..