Firebase 和后端逻辑

2024-02-29

我是 parse.com 用户,现在我正在寻找其他服务。 如何将后端逻辑写入 firebase?

假设我想验证服务器端的所有值,或者触发一些事情。我想到了一种解决方案,但我想知道推荐的方法。

我想

  1. 创建使用express的nodejs服务器。
  2. 创建中间件来处理逻辑。
  3. 从应用程序发送休息请求,触发中间件
  4. 使用firebase的nodejs sdk根据http请求的params更新值。
  5. 并在应用程序 firebase 处理程序上实现监听更改

他们的东西更简单?在解析中我使用了云代码,我希望逻辑不在客户端而是在服务器端。


更新(2017 年 3 月 10 日): 虽然我在下面概述的架构仍然有效并且可用于将 Firebase 与任何现有基础设施结合起来,但 Firebase 刚刚发布Firebase 的云功能 https://firebase.google.com/docs/functions/,它允许您在 Google 服务器上运行 JavaScript 函数以响应 Firebase 事件(例如数据库更改、用户登录等等)。


这篇博文对 Firebase 应用程序的常见架构进行了很好的定义Firebase 在您的应用中适合什么位置? https://www.firebase.com/blog/2013-03-25-where-does-firebase-fit.html.

您提出的架构最接近架构 3,其中您的客户端代码直接与 Firebase 对话and直接连接到您的 Node.js 服务器。

我还强烈建议您考虑选项 2,其中客户端和服务器之间的所有交互都通过 Firebase 运行。这种类型的架构的一个很好的例子是手电筒搜索集成 https://github.com/firebase/flashlight。客户将其搜索查询写入 Firebase 数据库。服务器侦听此类请求,执行查询并将响应写回数据库。客户端等待该响应。

该服务器的简单概要如下:

var ref = new Firebase('https://yours.firebaseio.com/searches');
ref.child('requests').on('child_added', function(requestSnapshot) {

    // TODO: execute your operation for the request

    var responseRef = ref.child('responses').child(requestSnapshot.key());
    responseRef.set(result, function(error) {
        if (!error) {
            // remove the request, since we've handled it
            requestSnapshot.ref().remove();
        }
    });
})

使用最后一种方法,客户端永远不会直接与您的服务器对话,这消除了您必须担心的所有潜在问题。因此,我有时将它们称为“机器人”,而不是服务器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Firebase 和后端逻辑 的相关文章

随机推荐