Я пытаюсь работать с веб-сайтом, который требует некоторой информации от пользователя Facebook, я использую PHP и JS SDK.
У меня есть функция на PHP:
public function isLoggedOnFacebook() {
$user = $this->_facebook->getUser();
if ($user) {
return $this->_facebook->api("/$user");
}
return false;
}
В классе, который содержит объект facebook из SDK в $this->_facebook
.
Затем в блоке я делаю это:
<?php if (!$this->isLoggedOnFacebook()): ?>
<div>
<fb:login-button show-faces="true" perms="email" width="500" />
</div>
<?php endif ?>
И среда FB JS установлена правильновверх (я думаю), так что это работает.Таким образом, пользователь получает всплывающее окно и авторизует сайт.
Проблема заключается в том, что даже после того, как приложение было авторизовано пользователем, $ user всегда равен 0, что означает, что $facebook->getUser()
всегда возвращает 0, а затем перечисляет лицапользователей, включая зарегистрированного пользователя, но если я вызову $facebook->api('/me')
или что-то еще, то возникнет исключение недопустимого токена.
Я видел эту проблему, но не виделРешение, я не знаю, в чем проблема, и у меня заканчиваются идеи.
На странице разработчиков Facebook в разделе приложений есть вкладка Веб-сайт, где вы можете настроить URL-адрес своего сайта и домен домена.и я думаю, что это является причиной моей проблемы, но я не знаю точно, что эти поля должны содержать.