Вход в Google выдает ошибку при переходе на дополнительные учетные записи Youtube

Я сейчас пытаюсь использовать gapi.auth2 из Google Sign-In для веб-сайтов API, и это код, который я имею:

- загрузить библиотеку с:

<script src="https://apis.google.com/js/platform.js?onload=onLoadGapiCallback" async defer></script>

- инициализировать переменную auth2:

var auth2;

window.onLoadGapiCallback = () => {
  gapi.load('auth2', () => {
    auth2 = gapi.auth2.init({
      'client_id': 'CLIENT_ID',
      'scope': 'profile email https://www.googleapis.com/auth/youtube.readonly'
    });
  });
};

- и когда нажата кнопка, сделайте:

auth2.signIn().then(() => {
  console.log('auth is:', auth2.currentUser.get().getAuthResponse().access_token);
});

Это хорошо работает, он инициализирует переменную auth2, когда я нажимаю кнопку, он показывает SingIn и я выберу одну из моих учетных записей Google. Проблема в том, что теперь, когда мне нужно выбрать учетную запись YouTube, если я выберу другую учетную запись, а не главную, я получу объект исключения, подобный этому:

{type: "tokenFailed", idpId: "google", error: "USER_LOGGED_OUT"}

также есть последний запрос XHR, который имеет этот ответ:

{"error":"USER_LOGGED_OUT","detail":"No active session found."}

Так что это работает, только если я выбираю основной аккаунт, но я не могу выбрать другие аккаунты YouTube.

Что мне здесь не хватает? Я просмотрел все эти документы, но никто не помог мне:

Получение информации о профиле

Ссылка на JavaScript для входа в Google

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

Обновление: запуск кода из этого примера (но с этим scope: 'profile email https://www.googleapis.com/auth/youtube.readonly') будет работать только в том случае, если я выберу первую учетную запись Youtube для каждой учетной записи Google. Если я выберу любую другую учетную запись Youtube, я получу эту ошибку:

0 ответов

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