Acu*_*ado 3 javascript facebook-login firebase-authentication
我正在使用Firebase身份验证创建一个Web应用程序来验证我的用户和一个MongoDB数据库,以存储特定于我的站点的一些相关用户信息.我正在尝试添加Facebook作为另一种身份验证方式.
登录Facebook正在运行,但我想要做的是拦截Firebase的用户生成/身份验证,以检查Firebase是否在首次登录Facebook时创建新用户.这样,如果在Firebase中创建新用户,我还可以在我的mongo数据库中创建一个新用户(主要是处理注册).我的facebook登录功能如下所示:
handleFacebookLogin() {
firebase.auth().signInWithPopup(provider).then(function(result) {
var token = result.credential.accessToken;
var user = result.user;
// check if new user here
// handleNewFacebookUser()
this.props.update(user);
}).catch(function(error) {
var errorCode = error.code;
var errorMessage = error.message;
var email = error.email;
var credential = error.credential;
});
}
Run Code Online (Sandbox Code Playgroud)
我找不到任何可以让我检查Firebase文档中是否生成了新用户的内容.当第一次通过Facebook登录时,它似乎默默地处理新的Firebase auth用户生成.如果Firebase没有内置的方法来处理这个问题,我只会检查用户是否存在于我的数据库中,但我想确保没有更简单的替代方法.
您可以按如下方式检测用户是新用户还是现有用户:
firebase.auth().signInWithPopup(provider)
.then(function(result) {
console.log(result.additionalUserInfo.isNewUser);
})
.catch(function(error) {
// Handle error.
});
Run Code Online (Sandbox Code Playgroud)
有关此内容的更多信息,请参阅文档.
| 归档时间: |
|
| 查看次数: |
1411 次 |
| 最近记录: |