Выход из JS SDK не выходит из PHP SDK - PullRequest
5 голосов
/ 10 октября 2011

У меня есть веб-сайт, который использует PHP SDK и JS SDK.

После обновления до OAuth в обоих я заметил, что выход из JS на самом деле не выводит пользователя из PHP.

Похоже, что общее решение состоит в том, чтобы сделать вызов для '/ me', а затем, если эти ошибки, предположить, что пользователь вышел из системы. Однако мне не нужно вызывать / me на каждом рендере страниц, я просто хочу знать, вошел ли пользователь в систему без снижения производительности вызова API FB на каждом рендере.

Есть ли способ, чтобы PHP SDK был проинформирован о выходе из системы через JS SDK?

Некоторые вещи, которые я пробовал:

  • Закомментируйте содержимое setPersistentData в Facebook.php
  • Вручную удалите fbsr _ :: appid :: cookie

Спасибо!

Ответы [ 2 ]

0 голосов
/ 08 мая 2012

получить токен доступа пользователя из библиотеки Facebook

$access_token = $this->facebook->getAccessToken();

и затем используйте этот код в функции выхода из системы

if ($this->facebook_user)
        { 


        $logoutUrl = $this->facebook->getLogoutUrl()."&access_token=".$access_token; 


        redirect($logoutUrl);   
        }

И внесите некоторые изменения в файл библиотеки Facebook.

 public function getLogoutUrl($params=array()) {
    return $this->getUrl(
      'www',
      'logout.php',
      array_merge(array(
        'next' => $this->getCurrentUrl(),

      ), $params)
    );
  }
0 голосов
/ 15 октября 2011
setcookie(session_name(), '', time()-42000, '/'); 
unset($_SESSION);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...