Выход из FaceBook FB.ui не запускается - PullRequest
3 голосов
/ 15 октября 2011
FB.ui(
       {
         method: 'feed',
         name: 'some text',
         link: 'some text',
         picture: 'aa.jpg',
         caption: 'some text',
         description: 'some text',
         message: 'some text'
       },
       function(response) {
         if (response && response.post_id) {
            alert('Post was published.');               
        } else {
            alert('Post was not published.');
         }
       });
}

Этот код работает нормально, теперь мне нравится после:

alert('Post was published.');

чтобы выйти из фейсбука, молча КАК?

Добавление этого кода После того, как alert('post publish') ничего не сделал !!

FB.ui(
 { method:'auth.logout',  display:'hidden' },
 function() { alert("you're logged out!"); }
);

я обнаружил: FB auth.logout поднимается после входа в систему с использованием «серверного рабочего процесса» (OAuth 2.0) , но не уверен, что я понимаю код, достаточный для того, чтобы он знал, что делает я спрашиваю!

1 Ответ

2 голосов
/ 15 октября 2011
  1. https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus/

  2. https://developers.facebook.com/docs/reference/javascript/FB.logout/

Best Practices

FB.logout выведет пользователя с вашего сайта и Facebook.Чтобы вызвать функцию, вам понадобится действительный токен доступа для пользователя.

Вызов FB.logout также сделает недействительным токен доступа, который у вас есть для пользователя, если у вас нет разрешения offline_access.

Я написал образец, используя поле для комментариев, чтобы запустить автоматический выход из системы http://shawnsspace.com/fb.logout.test.php

КОД:


    <div id="fb-root"></div>    
    <script>
      window.fbAsyncInit = function() {
        FB.init({
    appId  : '112104298812138',
    status : true, // check login status
    cookie : true, // enable cookies to allow the server to access the session
    xfbml  : true, // parse XFBML
    //channelUrl : 'http://WWW.MYDOMAIN.COM/channel.html', // channel.html file
    oauth  : true // enable OAuth 2.0
        });
FB.Canvas.EarlyFlush.addResource("http://shawnsspace.com/index.php");
FB.Canvas.setAutoResize();
            FB.getLoginStatus(function(response) {
              if (response.authResponse) {

                var accessToken = response.authResponse.accessToken;
              } else {
              }
            }); 
    FB.Event.subscribe('comment.create', function(response) {
     //alert(JSON.stringify(response));
        FB.logout(function(response) {
        window.location.reload();
        });
    });
        FB.Event.subscribe('auth.login', function(response) {
        //top.location.href = 'http://apps.facebook.com/shawnsspace/fbcomments.php?ref=loggedin';
        window.location.reload();
        });
        FB.Event.subscribe('auth.logout', function(response) {
        //top.location.href = "http://apps.facebook.com/shawnsspace/fbcomments.php?ref=loggedout";
        alert('logged out');
        });
      };
      (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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...