【问题标题】:Facebook Graph - only include status messages posted by page?Facebook Graph - 仅包括按页面发布的状态消息?
【发布时间】:2012-10-31 05:51:57
【问题描述】:

我正在尝试在网站上设置 Facebook 状态更新提要。但是,我使用 Facebook 的 Graph API 提取的当前数据包括图片、点赞等。

如何编辑它以仅包含此页面发布到他们自己页面上的状态消息?

https://graph.facebook.com/477138555413/feed?access_token=<APP ACCESS TOKEN>

我尝试更换提要?有状态?但我被告知“请求此资源需要用户访问令牌。”

谢谢。

【问题讨论】:

  • 仔细检查您的代码和访问令牌,因为PAGE_ID/statuses 应该适用于任何有效的访问令牌。

标签: facebook api facebook-graph-api


【解决方案1】:

您需要使用用户访问令牌来访问页面的 statuses 连接 - 如果由于某种原因这对您不起作用,您只需请求 feed 连接并根据 @ 进行过滤987654324@ 和 from 那里帖子的值。

如果这是您的页面,只需使用页面本身的页面访问令牌来检索提要。查看Login 文档以获取详细信息 - 当您使用用户的长期(60 天)令牌(来自服务器端 Oauth 流程或使用客户端流程并扩展令牌服务器端)访问页面时/accounts 的访问令牌,该页面访问令牌不会过期。

【讨论】:

    【解决方案2】:

    一切都好。我找到了一个简单的解决方案。

    我正在获取数据:

    $FBpage = file_get_contents('https://graph.facebook.com/477138555413/posts?access_token=<APP ACCESS TOKEN>');
    

    用 JSON 解释数据:

    $FBdata = json_decode($FBpage);
    

    然后我正在运行一个 foreach 循环来返回每个状态:

    foreach ($FBdata->data as $news ) {)
    

    为了过滤我的结果并只显示状态消息,我添加了这个:

    if (empty($news->message)) { continue; }
    

    全部完成!

    :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-19
      • 1970-01-01
      • 2022-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多