【问题标题】:Facebook API get post details from feed [duplicate]Facebook API从提要中获取帖子详细信息[重复]
【发布时间】:2015-11-04 23:00:06
【问题描述】:

我正在使用 PHP Facebook API(与 laravel 一起使用)

我可以设法从页面获取提要,并使用它发布的所有内容

    $request = Facebook::get('/COMPANYPAGE?fields=feed.limit(25)');
    $response = $request->getGraphPage()->getField('feed');

这将返回以下对象

但我似乎无法获得该帖子的具体信息!喜欢 包括的图像.. 我需要执行另一个呼叫吗?

我尝试了以下方法,但结果相同

    $request = Facebook::get('/elbeko?fields=feed.limit(25)');
    $response = $request->getGraphPage()->getField('feed');

    foreach($response as $item) {
        $post = Facebook::get($item['id'])->getGraphObject();
    }

【问题讨论】:

  • @CBroe 我不认为这是上述帖子的重复。这个属于页面帖子,而另一个则要求用户帖子
  • @FelixGeenen 对所有 API 端点的底层更改都是相同的 - 您需要询问您想要的字段。那里的一个答案链接到更改日志,它解释了这个问题,甚至没有特别提到页面或用户配置文件。为什么要这样做,因为它对所有人都是一样的。

标签: php facebook laravel


【解决方案1】:

从 v2.4 开始,您必须指定要从 Grpah API 返回的每个字段。你应该可以使用

/elbeko/feed?fields=id,message,link,attachments{media}&limit=25

返回类似

的东西
{
  "data": [
   {
      "id": "1472127519670095_1645415342341311",
      "message": "Benieuwd naar ons nieuw project in de regio Gent? Binnenkort meer info via www.elbeko.be!",
      "link": "https://www.facebook.com/elbeko/photos/a.1589552831260896.1073741835.1472127519670095/1645415342341311/?type=3",
      "attachments": {
        "data": [
          {
            "media": {
              "image": {
                "height": 405,
                "src": "https://scontent.xx.fbcdn.net/hphotos-xpl1/v/t1.0-9/s720x720/11954813_1645415342341311_5204470874884096944_n.jpg?oh=0a7e10b12d3feb90b2de79fa60a7f8f8&oe=56C30337",
                "width": 720
              }
            }
          }
        ]
      }
    }
  ],
  "paging": {
    "previous": "https://graph.facebook.com/v2.5/1472127519670095/feed?fields=id,message,link,attachments%7Bmedia%7D&limit=2&format=json&since=1441790055&access_token=&__paging_token=&__previous=1",
    "next": "https://graph.facebook.com/v2.5/1472127519670095/feed?fields=id,message,link,attachments%7Bmedia%7D&limit=2&format=json&access_token=&until=1441124382&__paging_token="
  },
}

过去,来自 Graph API 调用的响应会返回一组默认字段。为了减少有效负载大小并改善移动网络的延迟,我们减少了大多数 Graph API 调用返回的默认字段的数量。在 v2.4 中,您需要以声明方式列出调用的响应字段。

【讨论】:

    猜你喜欢
    • 2018-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-02
    • 2019-04-22
    相关资源
    最近更新 更多