我一直在关注 this tutorial 在我的 React 管理项目中实现 firebase googleAuth。
我可以登录我的应用,然后退出。一切正常,但我在如何查看 google 发送以验证我的登录名的 tokenID 方面遇到了问题。我需要这些信息来验证最终的后端。这是我的登录表单目前的样子。
import React from "react";
import { Login, LoginForm } from "react-admin";
import StyledFirebaseAuth from 'react-firebaseui/StyledFirebaseAuth';
import firebase from 'firebase';
// Configure FirebaseUI.
const uiConfig = {
// Popup signin flow rather than redirect flow.
signInFlow: 'popup',
// Redirect to /signedIn after sign in is successful. Alternatively you can provide a callbacks.signInSuccess function.
signInSuccessUrl: '#/',
// We will display Google as the auth provider.
signInOptions: [
firebase.auth.GoogleAuthProvider.PROVIDER_ID
]
};
const SignInScreen = () => <StyledFirebaseAuth uiConfig={uiConfig} firebaseAuth={firebase.auth()}/>;
const CustomLoginForm = props => (
<div>
<LoginForm {...props} />
<SignInScreen />
</div>
);
const CustomLoginPage = props => (
<Login {...props}>
<CustomLoginForm {...props}/>
</Login>
);
export default CustomLoginPage;
知道如何从这个流程中提取这些信息,例如 ID、姓名、电子邮件等吗?
提前致谢
答案 0 :(得分:1)
哎呀,昨天用了 4 个小时都没有用。发布此内容,15 分钟后找到我自己的答案。如果您将此调用添加回 uiConfig,您可以注销凭证信息,然后从那里使用它做您想做的事情。
callbacks: {
signInSuccessWithAuthResult: function(authResult, redirectUrl) {
console.log(authResult)
},
},