Не удается получить электронную почту из приложения Facebook - PullRequest
0 голосов
/ 29 августа 2011

Я новичок в приложениях Facebook и использую код примера в php jdk Facebook для тестирования.Хотя я получил имя пользователя, имя и т. Д. Я не получаю электронную почту или информацию о дне рождения.Я искал на этом форуме Как получить идентификатор электронной почты пользователя в приложении Facebook с помощью PHP? и добавил дополнительную строку 'req_perms' =>'email,user_birthday,publish_stream', но результат тот же.Я посылаю вам коды:

public function getLoginUrl($params=array()) {
    $this->establishCSRFTokenState();
    $currentUrl = $this->getCurrentUrl();
    return $this->getUrl(
      'www',
      'dialog/oauth',
      array_merge(array(
                    'client_id' => $this->getAppId(),
                    'req_perms' =>'email,user_birthday,publish_stream',
                    'redirect_uri' => $currentUrl, // possibly overwritten
                    'state' => $this->state),
                  $params));
  /**
   * Get a Logout URL suitable for use with redirects.
   *
   * The parameters:
   * - next: the url to go to after a successful logout
   *
   * @param array $params Provide custom parameters
   * @return string The URL for the logout flow
   */
  public function getLogoutUrl($params=array()) {
    return $this->getUrl(
      'www',
      'logout.php',
      array_merge(array(
        'next' => $this->getCurrentUrl(),
        'access_token' => $this->getAccessToken(),
      ), $params)
    );
  }

И в index.php я получаю электронную почту

echo "E-mail".$user_profile['email']."<br />";

1 Ответ

0 голосов
/ 29 августа 2011

Вы изменили библиотеку Facebook SDK. Вы отредактировали код facebook.php. Нет необходимости редактировать код библиотеки Facebook. Просто удалите параметр из библиотеки Facebook:

'req_perms' =>'email,user_birthday,publish_stream',

Вы должны использовать этот параметр здесь:

$loginUrl = $facebook->getLoginUrl(array('canvas' => 1,
                                  'fbconnect' => 0,
                                  'scope' => 'email,user_birthday,publish_stream',
                                  'next' => CANVAS_PAGE,
                                  'cancel_url' => CANVAS_PAGE ));

Изменено req_perms для области. Теперь будет нормально работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...