我们正在开发一个使用Firebase的Ionic应用程序,并允许用户使用Facebook登录。 我们认为电子邮件是数据库的必填字段。
我们正面临着一些Facebook用户的帐户中没有电子邮件的情况(例如,因为他们使用电话号码创建了该帐户)。
当前,我们在用户注册后知道用户数据。在那之前有什么办法知道这些信息吗?
signIanWithFacebook() {
return this.facebook.login(['email']).then(res => {
const facebookCredential = firebase.auth.FacebookAuthProvider.credential(res.authResponse.accessToken);
// here is where we would like to know if user has email
firebase.auth().signInAndRetrieveDataWithCredential(facebookCredential)
.then(
// here is where we currently know if the user has email or not
(userCred: firebase.auth.UserCredential) => this.handleSocialMediaLogin(userCred)
).catch((err) => this.onLoginError(err));
});
}