Angular Firebase:如何使用身份验证提供程序识别第一次注册
谢谢你的光临 我正在使用Facebook和Twitter实施Firebase身份验证,在用户首次注册后,我有特殊需要。我们正在创建一个refereal系统,我需要保留一个令牌,并知道它是否是第一个登录以向推荐他的用户添加点数的系统 我可以很容易地用电子邮件和密码来区分这两种方法,但我不能用社交提供商来区分Angular Firebase:如何使用身份验证提供程序识别第一次注册,angular,firebase,firebase-authentication,angularfire2,Angular,Firebase,Firebase Authentication,Angularfire2,谢谢你的光临 我正在使用Facebook和Twitter实施Firebase身份验证,在用户首次注册后,我有特殊需要。我们正在创建一个refereal系统,我需要保留一个令牌,并知道它是否是第一个登录以向推荐他的用户添加点数的系统 我可以很容易地用电子邮件和密码来区分这两种方法,但我不能用社交提供商来区分 signInRegular(email, password) { const credential = firebase.auth.EmailAuthProvider.credenti
signInRegular(email, password) {
const credential = firebase.auth.EmailAuthProvider.credential(email, password);
return this.afAuth.auth.signInWithEmailAndPassword(email, password)
}
emailSignUp(email: string, password: string) {
return this.afAuth.auth.createUserWithEmailAndPassword(email, password).then(user => {
this.userDetails = user;
console.log(this.userDetails);
}).catch(error => error);
}
我遇到的问题是Firebase带来了一种独特的登录和注册方法
signInWithFacebook() {
this.auth.signInWithFacebook().then((res) => {
console.log("Authenticated with Facebook")
}).catch((err) => console.log(err));
}
我计划通过数据库和存储,如果用户有一个创建的帐户或没有
但是,我想找到一种避免查询数据库的方法
如果您有任何建议或兴趣,我们将不胜感激
举手您必须在数据库/数据存储中保存转诊记录。将唯一密钥传递给referer,然后referer将其传递给新用户。将转介密钥输入添加到新用户注册流以收集转介密钥
作为在数据存储中记录新用户的一部分,请查询
referralKeys
集合以获取匹配的密钥(该密钥将具有原始referrer的uid作为属性)您必须在数据库/数据存储中保留一条引用记录。将唯一密钥传递给referer,然后referer将其传递给新用户。将转介密钥输入添加到新用户注册流以收集转介密钥
作为在数据存储中记录新用户的一部分,请查询
referralKeys
集合以获得匹配的密钥(将原始referrer的uid作为属性)感谢@bojeil,他找到了这篇文章
Firebase auth确实提供了一个指示器,指示用户是否是新用户
firebase.auth().signInWithPopup(provider)
.then(function(result) {
console.log(result.additionalUserInfo.isNewUser);
})
.catch(function(error) {
// Handle error.
});
这是指此功能的 多亏@bojeil,他找到了这篇文章 Firebase auth确实提供了一个指示器,指示用户是否是新用户
firebase.auth().signInWithPopup(provider)
.then(function(result) {
console.log(result.additionalUserInfo.isNewUser);
})
.catch(function(error) {
// Handle error.
});
这是指此功能的 查看此帖子:Firebase返回一个标志,无论用户是新用户还是现有用户。@bojeil非常感谢!!!这绝对是答案检查这篇文章:Firebase返回一个标志,无论用户是新的还是现有的。@bojeil非常感谢!!!这绝对是答案