我有一个fql查询:
{"e426262700718049":"SELECT name, start_time, location, creator, pic_square FROM event WHERE eid=426262700718049","c426262700718049":"SELECT name FROM profile WHERE id IN (SELECT creator FROM #e426262700718049)"}
在Graph Api Explorer中它完全正常,但sdk只返回空数组。使用不同的查询,它完全正常。
这就是我实施它的方式:
public function mquery($queries)
{
$params = array(
'method' => 'fql.multiquery',
'queries' => $queries
);
return $this->getFb()->api($params);
}
有什么想法吗? :)
答案 0 :(得分:0)
问题与权限有关,您可能在尝试使用SDK检索数据时未授权用户。
您的查询使用Graph API和Graph Explorer返回空数据集对我,因为它返回了未授权用户无法使用的数据(这可能是使用SDK查询的情况) )。
如果您在没有access_token
的情况下调用它,则会出现异常,但默认情况下使用SDK使用应用程序access_token
。请务必在查询之前授权用户以获得正确的结果。
$fb->api('/fql', array('q'=>'FQL QUERY OR MULTIQUERY'));