我需要实现一个侦听器,一旦从外部消息触发,就会写入我的firebase。为两页代码运行外部服务器对我来说似乎不合理,而且我已经阅读过有关Firebase静态托管的内容。
可以在Firebase上运行小型自定义脚本,就像Backendless等其他一些BaaS一样吗?
答案 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
});
当然,这需要一个主动/连接的客户端,而不是您试图避免使用的服务器。
如果您不想要,那么您需要一台服务器。现在有很多免费且价格合理的选择。