我可以在Firebase上托管监听器吗?

时间:2014-04-05 14:10:54

标签: firebase

我需要实现一个侦听器,一旦从外部消息触发,就会写入我的firebase。为两页代码运行外部服务器对我来说似乎不合理,而且我已经阅读过有关Firebase静态托管的内容。

可以在Firebase上运行小型自定义脚本,就像Backendless等其他一些BaaS一样吗?

1 个答案:

答案 0 :(得分:2)

自2017年3月起, 可以在Google服务器上运行JavaScript代码的小片段,以便使用Cloud Functions for Firebase响应Firebase中的事件。通过写入数据库来触发函数可以很简单:

// Listens for new messages added to /trigger
exports.onTrigger = functions.database.ref('/trigger')
    .onWrite(event => {
      // Grab the current value of what was written to the Realtime Database.
      const original = event.data.val();
      // TODO: write value to data and return a promise
    });

我强烈建议您阅读文档并使用common use-cases for Cloud Functions for Firebase检查页面。

旧答案

您无法在Firebase的服务器上执行自己的代码。但是,您可以让触发器流经Firebase,然后将更新写入Firebase。

var trigger = new Firebase('http://yourfirebase.firebaseio.com/trigger');
var data = new Firebase('http://yourfirebase.firebaseio.com/data');
handlersRef.on('value', function(snapshot) {
    // write value to data
});

当然,这需要一个主动/连接的客户端,而不是您试图避免使用的服务器。

如果您不想要,那么您需要一台服务器。现在有很多免费且价格合理的选择。