当我记录类型===“成功”时返回的用户数据时,有一个访问令牌,但idToken显示为空。刷新令牌,令牌过期也都为空。
我做错什么了吗?
这是我的代码:
_signInAsync = async () => {
try {
await GoogleSignIn.askForPlayServicesAsync();
const { type, user } = await GoogleSignIn.signInAsync();
userAuth = await user.refreshAuth();
if (type === "success") {
alert(JSON.stringify(user));
const credential = firebase.auth.GoogleAuthProvider(
user.auth.idToken,
user.auth.accessToken
);
firebase
.auth()
.signInWithCredential(credential )
.catch((err) => {
alert(err);
});
this._syncUserWithStateAsync();
}
} catch ({ message }) {
console.error("[GoogleSignIn][_signInAsync] login: Error:" + message);
}
};
如何在没有idToken或accesstoken的情况下使用Firebase凭证?
答案 0 :(得分:0)
signInAsync = async () => {
try {
await GoogleSignIn.askForPlayServicesAsync();
const result = await GoogleSignIn.signInAsync();
if (result.type === 'success') {
this.onSignIn(result.user.auth);
return result.user.auth;
}
} catch ({ message }) {
alert('login: Error:' + message);
}
};
这对我有用,