1

我正在尝试获取 facebook 用户的朋友的数据。我使用了两个单独的查询,一个来获取 name ,一个 id 和另一个来获取性别。但是它使数据加载如此缓慢。是否有一种可能的方法来使用一个查询来获取 name 、 id 、 pic 和为用户的所有 facebook 朋友服务。

这是我在不同功能中提出的两个查询

 function getFacebookFriends($criteria='') {
  $name = $criteria['name'];

  if($name=='') $name = 'me';

$url = 'https://graph.facebook.com/'.$name.'/friends?access_token='.$this->getAccessToken();
$content = $this->getDataFromUrl($url);
$content = json_decode($content,true);

$users = $this->formatFacebookUsers($content);

return $users;
}

这是另一个功能不同的

        $url = 'https://graph.facebook.com/'.$user_id.'?fields=gender';
        //echo '<a href="'.$url.'" target="_blank">'.$url.'</a><br>';
        $data = json_decode($this->getDataFromUrl($url));

        $fb['gender'] = $data->gender;

我正在用这个来获取性别

$url = 'https://graph.facebook.com/'.$user_id.'?fields=gender';

可以只发送一个请求来满足我想要的所有需求吗?

4

1 回答 1

0

我不是 100% 确定是否有替代方法,但考虑到您使用的是 PHP,您可能想考虑使用 multi_curl,因为操作系统并行调度所有出站请求,您将获得令人难以置信的速度(高几个数量级)

http://www.phpied.com/simultaneuos-http-requests-in-php-with-curl/

于 2013-05-16T13:06:21.760 回答