Вход в Google не работает только для мобильных устройств в Интернете. - PullRequest
0 голосов
/ 16 декабря 2018

Мой сайт реализует вход в Google с кодом, приведенным ниже, и он работает довольно хорошо.

Когда я пытаюсь сделать это в мобильной версии, весь поток работает правильно, но я не получаю ответа на знакв. Я полагаю, это потому, что мобильная версия не показывает всплывающее окно, а новую вкладку (у Facebook тоже такое же поведение ...)

Как мне сделать так, чтобы она работала и в мобильной версии?

gapi.load('auth2', function() {});

$(function() {
  $("#btn-google-login").on('click', function() {

    var proccedLogin = function(resp) {
      // my continue code...
    }

    // Retrieve the singleton for the GoogleAuth library and set up the client.
    auth2 = gapi.auth2.init({
      client_id: $('meta[name="google-signin-client_id"]').attr('content'),
      cookiepolicy: 'single_host_origin',
      prompt: 'consent',
      immediate: false
    }, function() {});

    auth2.signIn()
      .then(proccedLogin)
      .catch(function(error) {
        alert(JSON.stringify(error, undefined, 2))
      })

  }) // btn google click
})

Ps .: Я получаю ошибку «popup_closed_by_user», но я не закрыл вкладку самостоятельно

Редактировать

Теперь я получаю 'popup_blocked_by_browser'.Я следовал за некоторыми изменениями, описанными в ссылке ниже, но она просто возвращала всегда одну и ту же ошибку ...

обнаружение ошибки: "popup_blocked_by_browser" для google auth2 в javascript

1 Ответ

0 голосов
/ 25 декабря 2018

Попробуйте это: Promise.resolve(gapi.auth2.getAuthInstance().signIn()).then источник: https://github.com/google/google-api-javascript-client/issues/232

...