【问题标题】:Facebook Graph API Filter Search ResultsFacebook Graph API 过滤搜索结果
【发布时间】:2014-03-12 01:47:42
【问题描述】:

我正在使用 PHP SDK 来获取公共帖子中某个关键字的结果

$q = "something";
$results = $facebook->api('/search/','get',array('q'=>$q,'type'=>'post','limit'=>10));

此查询返回与此类似的结果:

Array
(
    [id] => id
    [from] => Array
        (
            [name] => Some Random Name
            [id] => id
        )

    [message] => Hello hello hello. something
    [privacy] => Array
        (
            [value] => 
        )

    [type] => status
    [created_time] => 2013-10-31T10:20:58+0000
    [updated_time] => 2013-10-31T10:20:58+0000
)

正如您看到的 [type] => status 部分,这可以是状态、照片、链接等。我只想从包含搜索关键字的公开帖子中获取照片(在换句话说,在包含 $q 的公共帖子中搜索并过滤/获取/限制 10 个只有 [type] => 照片值的结果)

我怎样才能做到这一点?我认为 FQL 对此无能为力,因为我在公共帖子中进行搜索。

【问题讨论】:

  • 你试过 FB Graph api 调试器吗?
  • 如果你指的是 Graph API Explorer,是的

标签: php facebook facebook-graph-api types filter


【解决方案1】:

不,目前这是不可能的,将来可能会实施。

graph api search需要API端点为

https://graph.facebook.com/search?q=QUERY&type=OBJECT_TYPE

这里可能的对象类型有 - 帖子、事件、用户、组等。

https://developers.facebook.com/docs/reference/api/search/

您看到的返回值是字段,“类型”状态、照片、链接等是返回数据中的字段,但是您可以通过指定

&fields=id,name,picture,type

您可以在以下 URL 中的“可用搜索类型”中查看文档

https://developers.facebook.com/docs/graph-api/using-graph-api

您需要遍历结果并根据需要显示所需的结果。

【讨论】:

  • 不幸的是,循环是我不喜欢做的事情,但我猜目前别无选择
  • 没错,我们需要等待一些新功能,我相信 FB 将来会添加这些功能,但他们只是不想一次提供所有东西。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多