Мониторинг состояния сеанса пользователя

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

В следующем коде показано использование клиентского метода attachClickHandler версии 2.0 для создания обратного вызова, который либо автоматически завершает вход пользователя, либо предлагает пользователю выполнить повторную авторизацию в зависимости от состояния сеанса пользователя.

/**
 * The Sign-In client object.
 */
var auth2;

/**
 * Initializes the Sign-In client.
 */
var initClient = function() {
    gapi.load('auth2', function(){
        /**
         * Retrieve the singleton for the GoogleAuth library and set up the
         * client.
         */
        auth2 = gapi.auth2.init({
            client_id: 'CLIENT_ID.apps.googleusercontent.com'
        });

        // Attach the click handler to the sign-in button
        auth2.attachClickHandler('signin-button', {}, onSuccess, onFailure);
    });
};

/**
 * Handle successful sign-ins.
 */
var onSuccess = function(user) {
    console.log('Signed in as ' + user.getBasicProfile().getName());
 };

/**
 * Handle sign-in failures.
 */
var onFailure = function(error) {
    console.log(error);
};