我应该将Firebase与我的数据库结合使用吗?

时间:2017-07-29 16:44:39

标签: angular firebase ionic2 firebase-authentication

我是开发离子应用程序并实施Facebook登录的新手。我目前正在使用Firebase进行注册(使用Facebook登录)并将用户存储在我的数据库中。根据Authenticated状态,我登录/注册用户。

这是最佳做法吗?或者我可以不使用Firebase并直接使用我的数据库来验证和/或注册用户吗? Firebase究竟是如何让它变得更容易?

1 个答案:

答案 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();
        }
});