【发布时间】:2013-12-15 12:45:11
【问题描述】:
我需要构建一个应用程序,该应用程序将为三个 URL 提供三个输入字段。然后应用程序需要搜索 facebook 上的所有公开帖子并找到发布该特定 URL 的用户。我正在使用此代码:
$q = "http://www.someurl.com";
$search = $facebook->api('/search?q=' . $q .'&type=post&limit=200');
foreach ($value as $fkey=>$fvalue) {
if(isset($fvalue['from']['name']))
{
echo $fvalue['from']['name']."<br />";
}
}}
这会打印出 200 个发布特定链接的 Facebook 用户名。但是,正如我上面提到的,我需要搜索多个 URL 匹配。通过使用这种方法,我需要进行三个查询调用,然后交叉引用结果并获取出现在所有三个结果列表中的用户。有什么方法可以形成查询以在一次调用中返回所需的结果?我现在认为 FQL 是强大的工具,但我认为它不能用于这种公共查询。我真的仅限于公共图 api 吗?如果是这种情况,是否可以仅使用图形 api 形成复杂的查询?
编辑#1: 我尝试使用以下 FQL:
SELECT source_id FROM stream WHERE
CONTAINS('http://www.incgamers.com/2013/12/doom-20th-anniversary-today-true-classic')
AND CONTAINS('http://kotaku.com/5917693/ten-years-of-civ-ii-lock-the-world-in-perpetual-war')
AND CONTAINS('http://www.youtube.com/watch?v=1TBxdXm3DP0') limit 200
据我了解,这应该会返回在其 fb 流中具有这三个链接的用户。然而,事实并非如此。我是不是搞错了?
【问题讨论】:
标签: facebook facebook-graph-api facebook-fql