Избегайте функции входа в Google для вызова на каждой странице

Я интегрирую Google и Facebook логин на мой сайт. И установить условие, что человек может войти в систему с помощью FB или Google. Теперь проблема в том, что моя функция входа в Google работает автоматически, если моя учетная запись Gmail открыта в том же браузере.

    function loggedOut(href){
    gapi.load('auth2', function() {
                gapi.auth2.init();
    });
        setTimeout(function(){
        var auth2 = gapi.auth2.getAuthInstance();
        auth2.signOut().then(function () {
            //console.log('User signed out.');
            document.location = href;
        });

        }, 2000);
}

function onSignIn(googleUser) {
    var profile = googleUser.getBasicProfile();
    var fullName = profile.getName(),
    imageUrl = profile.getImageUrl(),
    email = profile.getEmail(),
    provider = 'Google';
    $.ajax({
        url: 'includes/google-login.php',
        type: 'POST',
        data: { provider: provider, fullName :fullName, imageUrl : imageUrl, email: email },
        success: function(data){
            console.log(data);
            if(data == 1){
                location.reload();
            } else if(data.trim().match("^Entered")){
                alert(data);
                loggedOut('This Page URL');
            }
        }
    });
};

$('#log-out').on('click', function(e){
    e.preventDefault();
    var href = $(this).attr('href');
    loggedOut(href);
});

1 ответ

var auth2 = gapi.auth2.getAuthInstance();

Поместите это в функцию, называемую логином, и вызывайте ее только по нажатию кнопки "Войти". Это должно помешать Google автоматически определять пользователя. Или вы можете полностью удалить эту строку.

Другие вопросы по тегам