Проблема Facebook PHP SDK с getLoginUrl()

У меня возникли проблемы с входом в PHP SDK с помощью getLoginUrl(). когда пользователь щелкает ссылку, сгенерированную этой функцией, он не показывает диалоговое окно разрешений, вместо этого показывает логотип facebook, вы должны щелкнуть его, прежде чем показывать диалоговое окно разрешений, пожалуйста, помогите мне!


person Sharlon M. Balbalosa    schedule 15.12.2010    source источник


Ответы (2)


Логотип Facebook отображается, потому что ваше приложение пытается загрузить диалоговое окно авторизации в iframe, что не разрешено OAuth 2.0. Вместо этого ваше приложение должно загружать диалоговое окно авторизации в _parent или _top или во всплывающем окне, что происходит, когда вы нажимаете на логотип Facebook.

Ответ будет зависеть от того, как ваше приложение позволяет пользователям запускать процесс аутентификации.

Пример, который есть у многих:

  1. пользователь приходит в ваше приложение и не регистрируется в нем.
  2. они должны щелкнуть ссылку, чтобы начать процесс регистрации (аутентификации).
  3. при нажатии на ссылку отображается логотип facebook. щелчок по логотипу facebook открывает диалоговое окно аутентификации.

Большинство людей жалуются, что в шаге 3 есть «дополнительный» шаг — отображение логотипа facebook.

ОТВЕТ: Измените ссылку:

ОТ 1_

TO: <a target="_top" href="<?= $loginUrl ?>

[есть несколько способов выполнить то, о чем вы просите, этот ответ показывает, о чем люди, кажется, спрашивают больше всего, вам нужно будет предоставить более подробную информацию, если это не применимо]

person Damion Hart    schedule 23.01.2012

Facebook не позволяет пользователю входить в систему через iframe, как в большинстве случаев oAuth.

person Steven    schedule 20.12.2010