我是开发离子应用程序并实施Facebook登录的新手。我目前正在使用Firebase进行注册(使用Facebook登录)并将用户存储在我的数据库中。根据Authenticated状态,我登录/注册用户。
这是最佳做法吗?或者我可以不使用Firebase并直接使用我的数据库来验证和/或注册用户吗? Firebase究竟是如何让它变得更容易?
答案 0 :(得分:0)
发表我的评论作为答案,因为我想在第一个问题上添加我的意见(而且评论时间太长了。)
Firebase确实为您提供了许多自己需要实现的实用程序:JWT生成,JWT验证,与第三方(Facebook,Google等)的通信,跟踪用户身份验证状态,错误处理和oAuth相关的一切(感谢@Frank van Puffelen)。
此外,如果您使用电子邮件身份验证,则需要以安全的方式存储密码。
如果最佳做法是使用您自己的数据库?这当然是不错的做法。您可以解码JWT以提取firebase ID并使用此ID来验证/查找数据库中的用户。例如:
FirebaseAuth.getInstance().verifyIdToken(firebaseAuthToken)
.addOnSuccessListener(new OnSuccessListener<FirebaseToken>() {
@Override
public void onSuccess(FirebaseToken decodedToken) {
decodedToken.getUid();
}
});