【问题标题】:filter facebook graph results过滤 facebook 图表结果
【发布时间】:2012-09-13 08:42:07
【问题描述】:

我正在使用此 URL 来检索特定用户的 Facebook 提要: https://graph.facebook.com/{id}/feed?access_token={access_token}

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

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

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

谢谢。

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

$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;
                }

【问题讨论】:

    标签: php facebook facebook-graph-api


    【解决方案1】:

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

    你可以看看Field Expansion这个新引入的功能能不能帮到你;

    否则,API 不允许进行太多“过滤”——如果您想要在这方面进行更多控制,您可能必须切换到 FQL 来获取数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-12
      • 2015-02-02
      • 2021-12-06
      • 2013-06-29
      • 1970-01-01
      • 2018-01-16
      • 2016-09-05
      • 2015-07-30
      相关资源
      最近更新 更多