首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Facebook页面获取最近的评论和关联的用户数据

从Facebook页面获取最近的评论和关联的用户数据
EN

Stack Overflow用户
提问于 2013-01-09 12:15:05
回答 1查看 547关注 0票数 1

正如主题所说,我正在尝试从Facebook页面获取最新的评论,以及相关的用户数据。我使用的是Open Graph & PHP SDK。

这对帖子很好用:

代码语言:javascript
复制
$fql_query = "
    SELECT fromid, id, post_id, time, text  
    FROM comment  
    WHERE post_id IN (SELECT post_id FROM stream WHERE source_id = '" . $fb_id . "') 
    ORDER BY time DESC LIMIT 1000";

$feed = $facebook->api(array(
    'method' => 'fql.query',
    'query' => $fql_query
    ));

下面是如何获取我需要的用户详细信息:

代码语言:javascript
复制
$fql_query = "
    SELECT pic_square, name  
    FROM user 
    WHERE uid = '" . $user_id . "'
    ";

而且,根据我所能找到的一切,这应该使用fql.multiquery将两者结合起来:

代码语言:javascript
复制
$fql_queries = "{
    \"query1\" : \"
    SELECT fromid, id, post_id, time, text 
    FROM comment 
    WHERE post_id IN (SELECT post_id FROM stream WHERE source_id = '" . $fb_id . "') 
    ORDER BY time DESC LIMIT 1000
    \", 
    \"query2\" : \"SELECT pic_square, name FROM user WHERE uid IN (SELECT fromid FROM #query1)\"
    }";

$feed = $facebook->api(array(
    'method' => 'fql.multiquery',
    'queries' => $fql_queries
    ));

但它只返回一个空数组。有没有人知道我哪里错了,或者有更好的方法来做我需要的事情?蒂娅,一如既往。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-09 12:36:15

我在我的一个页面上的Graph API浏览器中测试了它,它工作得很好。

这种多重查询在Graph API浏览器中的页面上有效吗?如果是,则这是权限问题。

也许您的问题在于您对json进行硬编码的方式。我在我的网站上使用这样的语法。(它也更具可读性):

代码语言:javascript
复制
$fql_queries = array(
   'query1' => "SELECT fromid, id, post_id, time, text...",
   'query2' => "SELECT pic_square, name FROM user..."
);

...
    'queries' => json_encode($fql_queries)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14228176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档