Как я могу получить уведомление, когда пользователь выходит из facebook.com? - PullRequest
0 голосов
/ 30 июля 2011

Пользователь зашел на мой сайт, используя последнюю версию PHP SDK. Если пользователь щелкает URL-адрес выхода из Facebook, который появляется на моем сайте, он выходит из Facebook и перенаправляется обратно на мой сайт, где я могу сделать некоторые очистки.

Однако, если во время сеанса (на моем сайте и в Facebook) пользователь заходит на www.facebook.com и выходит из него, мой сайт об этом не знает. Мне нужно быть уведомленным об этом на моем сайте, чтобы я мог провести уборку.

Единственное решение, которое я могу придумать, - это вызывать с каждой страницы моего сайта функцию getLoginStatusUrl (), но это кажется излишним. Разве нет способа попросить facebook позвонить по какому-либо URL на моем сайте, когда пользователь выходит из самого Facebook?

1 Ответ

0 голосов
/ 24 сентября 2011

Вы можете использовать js для подписки на событие auth.logout, как в примере с Facebook:

<div id="fb-root"></div>
<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId: '<?php echo $facebook->getAppID() ?>',
      cookie: true,
      xfbml: true,
      oauth: true
    });
    FB.Event.subscribe('auth.login', function(response) {
      window.location.reload();
    });
    FB.Event.subscribe('auth.logout', function(response) {
      window.location.reload();
    });
  };
  (function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol +
      '//connect.facebook.net/en_US/all.js';
    document.getElementById('fb-root').appendChild(e);
  }());
</script>
...