我正在使用具有“使用Google登录”和“使用Facebook登录”按钮的Web应用程序。用户成功登录由Firebase支持的应用程序后,我希望能够对其Google和Facebook数据进行API调用。示例是从Google相册或Facebook获取他们的照片。
通常,当您在网络上和登录时使用Google Auth API时,这很容易做到,您可以获得可以传递给服务器和服务器交换机的Auth代码,该代码一次性使用了Access Token和Refresh Token,将它们存储在服务器端,以便将来进行任何API调用。这是此方法的教程链接-https://developers.google.com/identity/sign-in/web/server-side-flow
使用Firebase作为我的后端,并使用FirebaseUI对我的Web应用程序的用户进行身份验证,我如何获得可以传递给Firebase Function的代码,然后可以将其交换为Access Token和Refresh Token并将其保存到Firestore中以获取进一步的API电话。
答案 0 :(得分:0)
您可以从firebaseUI使用signInSuccessWithAuthResult
回调:https://github.com/firebase/firebaseui-web#signinsuccesswithauthresultauthresult-redirecturl
它将公开userCredential对象。对于Google和Facebook之类的OAuth提供程序,您可以使用userCredential.credential
访问OAuthCredetial。此接口的参考在这里:https://firebase.google.com/docs/reference/js/firebase.auth.OAuthCredential