过滤facebook图表结果

时间:2012-09-13 08:42:08

标签: php facebook facebook-graph-api

我正在使用此网址检索特定用户的Facebook Feed: https://graph.facebook.com/ {ID} /喂?的access_token = {access_tocken}

然后通过搜索“照片”类型获取所有照片 并搜索“状态”或“链接”类型并获取它们的“消息”。

问题在于,某些结果是用户在封闭组上发布的帖子或其他私密且未在用户公共墙上显示的帖子。它还会返回其他用户在墙上写的帖子。

问题是: 我需要在那里进行更改,以便返回的结果将仅包括用户上传或上传的(!)图片,用户发布的链接以及用户在其公共墙上发布的状态......等等。 ???

感谢。

这是我处理所有这些的代码的一部分:

$graph_url = "https://graph.facebook.com/" . $facebook_id . "/feed?access_token=" . $facebook_at;
                $facebook_feeds = json_decode(file_get_contents($graph_url),true);
                $facebook_feeds = $facebook_feeds['data'];
                $fbIndex = 0;
                foreach ($facebook_feeds as $facebook_feed)
                {
                    $feed = new Feed();
                    $feed->network = 'facebook';
                    $feed->type = $facebook_feed['type'];
                    $feed->timestamp = strtotime($facebook_feed['created_time']);
                    if ( $feed->type == 'photo')
                        $feed->content = str_replace("_s.jpg", "_b.jpg", $facebook_feed['picture']);
                    else if (($feed->type == 'status' || $feed->type == 'link') && !empty($facebook_feed['message']))
                        $feed->content = $facebook_feed['message'];
                    else
                        continue;
                    $feeds[] = $feed;
                    if (++$fbIndex == 10)
                        break;
                }

1 个答案:

答案 0 :(得分:2)

  

问题是:我需要在那里进行更改,以便返回的结果将仅包括用户上传或上传的(!)图片,用户发布的链接以及用户在其公共墙上发布的状态......别无其他...... ???

您可以看到Field Expansion新引入的功能是否可以帮助您;

否则,API不允许太多“过滤” - 如果你想在这方面有更多的控制,你可能不得不切换到FQL来获取数据。