Firebase和Express之间的核心区别是什么?

现在我正在探索如何使用Express和MongoDB编写API。 我也使用Angular做我的路线和意见。 我知道Firebase和AngularFire可以做到这一点,所以我可以绕过使用Express(或所以我认为),并让我的应用程序是实时的。

在Chris Esplin的这篇文章中,他表示他不能放弃Express,因为在使用他的npm包的“Quiver-Invoice”(包含Firebase,Stripe和MailChimp的Mandrill服务)时,他需要它来编写promise,而不是使用更简洁的代码。

在这个SOpost里 ,海报说他们需要使用Express&Node来发送电子邮件。 我认为这是不可能的,如果只使用Firebase与Angular。

另外我也看到人们在这里讨论身份validation和安全性差异方面的差异https://groups.google.com/forum/#!topic/firebase-talk/WF9gf–A3Qo

问题(S)

那么Firebase和Express之间的核心区别是什么?

  • 是否有可能像我可以在Express + MongoDB中那样围绕Firebase构build一个API?

  • 是否有可能(或很快就可以)像使用Express一样自定义Firebase服务器?

Firebase是后端即服务,其旗舰function是实时事件数据库function。 Express是一个Node.js的Web框架。 比较两个是苹果橙子。

您可以使用快速/节点完成任何您想要的操作,但是您必须pipe理自己的服务器并编写后端function。 借助Firebase等BaaS,您可以避免pipe理任何服务器。 您甚至可以将这两者混合使用,并将Firebase用于某些事情,并将自己的服务器用于其他事情。 这是Flawk所做的。

如果您主要想要使用Express来实现实时事件,那么可以使用像Shoe这样的低级别事件将事件推送到客户端,也可以使用LiveResource这样的高级别,这样可以同步RESTy对象。