Сделайте Google Auth запрос gapi.auth без всплывающего окна

Нужно сделать запрос авторизации в js, но браузер не поддерживает всплывающие окна. Есть ли способ перенаправить на новый URL или показать запрос на странице html5 приложения

1 ответ

Используя этот код, проверьте, авторизовал ли пользователь ваше приложение.

gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: true}, callbackAuthResult);

Замечания: immediate:trueесли вы установите немедленное значение true, тогда всплывающее окно не будет отображаться.

Ты видишь? Вы не открываете всплывающее окно и не управляете материалом в обратном вызове. Этот обратный вызов обычно используется для пост-процессов. Здесь мы используем его для аутентификации.

в callbackAuthResult:

callbackAuthResult = function (authResult) {
    var authorizeButton = document.getElementById('authorize-button');
    if (authResult && !authResult.error) {
        authorizeButton.style.display = 'none';

    // do your processing here

    } else {
    authorizeButton.style.display = 'block';
    authorizeButton.onclick = callbackAuthClick;
    }
}

callbackAuthClick = function (event) {
gapi.auth.authorize({
    client_id: clientId,
    scope: scopes,
    immediate: false
}, handleAuthResult);
    return false;
}
Другие вопросы по тегам