Как получить кнопку входа в Facebook для отображения «Выйти» - PullRequest
6 голосов
/ 23 декабря 2010

Я заранее прошу прощения, если это явно задокументировано где-то на сайте разработчика FB - но я не могу его найти (поэтому, пожалуйста, укажите ссылку, если необходимо).

Я реализовал кнопку входа в FB на веб-сайте, используя GAE + Python. Вот HTML-код:

<fb:login-button></fb:login-button>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
  FB.init({appId: 'ad16a806fc10bef5d30881322e73be68', status: true, cookie: true, xfbml: true});
  FB.Event.subscribe('auth.sessionChange', function(response) {
    if (response.session) {
      // A user has logged in, and a new cookie has been saved
    } else {
      // The user has logged out, and the cookie has been cleared
    }
  });
</script>

В настоящее время поведение таково - если я нажимаю на кнопку «Войти», меня просят разрешить приложению доступ к FB. Который я потом выберу "ОК". Но тогда кнопка входа по-прежнему показывает «вход», а не «выход». Как мне это реализовать? На стороне сервера или клиента?

Ответы [ 4 ]

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

Не задокументировано на странице FB SDK Кнопка входа в систему по какой-то причине, но вы можете добавить атрибут autologoutlink="true" к тегу, и он будет отображать кнопку выхода из системы, если вы вошли в систему, а не просто сделать кнопку невидимой.

<fb:login-button autologoutlink="true"></fb:login-button>

Предупреждение : этот тег будет игнорироваться, если вы используете пользовательский текст для кнопки входа в систему, например

<!-- This will always display the button, whether you are logged in or out -->
<fb:login-button autologoutlink="true">Login To My Service!</fb:login-button>
0 голосов
/ 05 июля 2014

Дерек не упомянул альтернативу HTML5, которую он рекомендует:

<div id="fbloginbut" scope="user_birthday" onlogin="checkLoginState();" class="fb-login-button" data-max-rows="1" data-size="large" data-show-faces="false" data-auto-logout-link="true"></div>

На следующей странице будет сгенерирован код кнопки входа / выхода из системы, которая вам больше всего нравится: https://developers.facebook.com/docs/plugins/login-button

0 голосов
/ 09 июля 2013

Это было задокументировано на https://developers.facebook.com/docs/reference/plugins/login/.Вы также можете проверить onlogin для вашего обратного вызова.

0 голосов
/ 24 декабря 2010

Благодаря пользователю "ха-ха" решение:

1) Получите SDK Python для Facebook: https://github.com/facebook/python-sdk/tree/master/examples/appengine 2) Реализуйте пример HTML: https://github.com/facebook/python-sdk/blob/master/examples/appengine/example.html 3) Обновите ваш основной обработчик запросов и модели: https://github.com/facebook/python-sdk/blob/master/examples/appengine/example.py

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...