Кнопка входа в Javascript на Facebook не меняется на выход после входа в систему

#javascript #authentication #facebook

#javascript #аутентификация #Facebook

Вопрос:

Я создаю веб-сайт и использую facebook в качестве аутентификации. Я делал это раньше, и тогда это работало. Однако сейчас она не работает. Я могу войти в систему и выйти из системы, кнопка всегда будет оставаться на «войти с помощью facebook».

Я добавил autologoutlink=»true», но он по-прежнему не работает. Код ниже:

 <fb:login-button autologoutlink="true" perms="">Login with Facebook</fb:login-button>  
  

Если это поможет, это остальная часть моего кода facebook:

 <script src="http://connect.facebook.net/en_US/all.js"></script>  
<script>  
    FB.init({appId:'XXXXXXXXXXX', cookie:true, 
            status:true, xfbml:true
    });   

    // log IN event
    FB.Event.subscribe('auth.login', function(response) {  
        alert("logged in");
        insertMyInfo(response);          
    });

    // log OUT event
    FB.Event.subscribe('auth.logout', function(response) {
        alert("logged off");   
    });                
</script>
  

Ответ №1:

попробуйте извлечь из этого текст «Войти с помощью Facebook».

        <fb:login-button autologoutlink="true" perms="">Login with Facebook</fb:login-button>
  

Я имею в виду, что это должно выглядеть примерно так

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

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

Ответ №2:

Похоже, Facebook удалил параметр autologoutlink из своей кнопки:

https://developers.facebook.com/docs/reference/plugins/login/

Она по-прежнему отображается в выпадающих результатах поиска, поэтому она была там когда-то. Похоже, она была удалена. Вы должны попробовать получить последнюю версию кода кнопки входа с этой страницы и повторить попытку.

Ответ №3:

Пожалуйста, измените скоби

 scope="public_profile,email"

<fb:login-button scope="public_profile,email" onlogin="checkLoginState();" data-size="large" data-auto-logout-link="true"></fb:login-button>