Как получить credential.accessToken в Firebase currentUser?(Firebase Google Войти) - PullRequest
1 голос
/ 03 июля 2019

Я использую Firebase. Войдите в Google, чтобы подписать своих пользователей (веб-приложение React). Я настраиваю провайдера для доступа к информации о диске Google для пользователей:

provider.addScope('https://www.googleapis.com/auth/drive.readonly');
let { user, additionalUserInfo, credential } = await firebase.auth()
                                                      .signInWithPopup(provider);

Таким образом, я могу получить credential.accessToken для отправки запросов в G Drive API

Но когда мне нужно получить currentUser с:

firebase.auth().onAuthStateChanged(async user => {

, я не могу найти credential.accessToken в user объекте.

Есть ли способ получить к нему доступ?

Или мне нужно сохранить новый cookie с этим токеном при первом входе пользователя в систему?

Я пытался:

firebase.auth().onAuthStateChanged(function(user) {
  if (user) {
    user.getIdToken().then(function(data) {
      console.log(data)
    });
  }
});

from: Firebase getToken () TypeError: Невозможно прочитать свойство

Но эта функция только возвращает accessToken для входа в систему пользователя, она имеет то же имя, но другоемаркер.

...