Преобразуйте idToken для входа в Google в IdToken для Firebase, используя только HTTP - PullRequest
0 голосов
/ 10 декабря 2018

Я пытаюсь использовать API-интерфейсы HTTP REST Firestore от React Native.

Я использую только HTTP (без SDK).

После того, как пользователь вошел в систему с помощью Google Signin (отреагировать-native-google-signin), у меня есть idToken и accessToken.

. Я хочу иметь возможность преобразовать один из них в Firebase idToken, который можно использовать в 'Authorization': 'Bearer ${firebaseIdToken}'Заголовок HTTP с использованием только API-интерфейсов HTTP REST Firebase

https://firebase.google.com/docs/reference/rest/auth/#section-verify-custom-token

  • Введите "token" = "Пользовательский токен Firebase Auth".
    • Здесь не работают ни idToken, ни accessToken из Google Signin.
    • Нужно ли отправлять Google idToken на сервер, чтобы преобразовать его в Firebase Auth idToken?

До того, как я использовал эти вызовы SDK для аутентификации:

const cred = firebase.auth.GoogleAuthProvider.credential(idToken, accessToken);
await firebase.auth().signInAndRetrieveDataWithCredential(cred)
const firebaseIdToken = await firebase.auth().currentUser.getIdToken();
const headers = { 
    'Authorization': `Bearer ${firebaseIdToken}`
}

Ссылки по теме

https://github.com/react-native-community/react-native-google-signin https://firebase.google.com/docs/auth/admin/create-custom-tokens

1 Ответ

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

Вы можете использовать REST API для обмена учетными данными OAuth на токен Firebase ID: https://firebase.google.com/docs/reference/rest/auth/#section-sign-in-with-oauth-credential

...