Facebook друзья электронной почты FQL

У меня есть этот FQL:

$femail = $facebook->api(array( 'method' => 'fql.query', 'locale' => 'en_US', 'query' => 'SELECT email FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1='.$user_id.') AND uid = '.$friend_id.' ORDER BY name ASC', )); 

Вот результат print_r :

 Array ( [0] => Array ( [email] => ) ) 

Я хочу получить адрес электронной почты друга, но этот запрос приводит к пустым значениям электронной почты. Я что-то пропустил в запросе? Возможно ли получить электронную почту друзей? Я проверил с моим партнером, она дала разрешение на приложение, чтобы выдать адрес электронной почты.

Solutions Collecting From Web of "Facebook друзья электронной почты FQL"

В общем, вы НЕ МОЖЕТЕ получить адрес электронной почты своих друзей ( источник ):

 User permission Friends permission email not available 

НО, но так как ваш друг разрешил ваше приложение, вы можете попробовать следующее в консоли FQL :

 SELECT email FROM user WHERE uid=FRIEND_ID 

Я подозреваю, что проблема может заключаться в том, что вам нужен « access_token » друга, чтобы получить электронное письмо, потому что я предполагаю, что вы вошли в систему как пользователь, когда пытаетесь access_token свой запрос. Поэтому вам необходимо предоставить разрешение offline_access а затем использовать его с запросом.

Но прежде чем делать это, я попробую его с помощью приложения access_token .

PS: подзапрос не нужен, если вы знаете идентификатор друга.

Вы не можете получать адреса электронной почты друзей. Каждая учетная запись должна отказаться от совместного использования своего адреса электронной почты с приложением. Друзья не могут выбрать других друзей, что хорошо.

Кроме того, как упоминал @ Barkermn01, отбросьте AND uid = '. $ Friend_id.'