我正在使用Facebook PHP API进行FQL查询,如下所示:
$stream = $this->facebook->api('fql', array(
"q" => "SELECT post_id, actor_id, message, description, description_tags, type, attachment
FROM stream
WHERE filter_key in (
SELECT filter_key
FROM stream_filter
WHERE uid=me() AND type='newsfeed'
) AND is_hidden = 0"
));
这为我提供了用户的新闻Feed。但是,这只会为我提供actor
的ID - 我需要演员的名字。 (演员,我指的是新闻提要中故事的作者。)
我知道我需要再次查询API以检索名称。我如何执行这样的多重查询?使用此示例,我如何获取演员姓名?
答案 0 :(得分:0)
大多数人最初的反应是建议一个多查询。但是我不建议它出于以下原因:你可能已经知道了演员的名字。
假设你做了很多这些调用以获取流项目(我的一个生产应用程序确实如此,并且我按照我描述的方式对其进行了编码)。您不想做的是重载API并使Facebook对您的应用ID不满意并开始降低您的通话限制!
因此,您可以做的是基于actor_id缓存(使用memcached,Web应用程序缓存,数据库或其他)用户名(因为id的名称很少更改为给定ID)。这对于查找其他facebook fql对象(如注释,喜欢等)的/来自id也很有价值。