2011-07-29 152 views

回答

1

无法通过用户的图片连接检索完整个人资料图片(https:// UID/picture?type = large只会返回大约200x200的图片)。

要获取存储在Facebook上的个人资料图片的最大版本,您需要访问用户的个人资料相册。这需要user_photos权限。

public function getProfilePictureMaxUrl($facebook,$uid,$userAccessToken) { 
    $params = array('access_token' => $userAccessToken); 
    $r = $facebook->api('/'.$uid.'/albums',$params); 

    foreach ($r['data'] as $album) { 
     if ($album['type'] == 'profile') { 

      //retrieve information about this album 
      $r = $facebook->api('/'.$album['id'],$params); 

      $pid = ($r['cover_photo']); 

      //retrieve information about this photo 
      $r = $facebook->api('/'.$pid,$params); 

      return $r['source']; 
     } 
    } 

    //Profile folder not found (could be because of paging) 
    error_log('Failed to retrieve profile folder for uid '.$uid); 
    return false; 
} 
相关问题