基本上,我使用Firebase作为我的iOS应用程序的实时数据库。但是,即使不是实时的,我也想要一个“事务日志”到我的服务器。有办法安排这件事吗?也许带个钩子?
发布于 2017-04-06 14:17:42
当数据库中的数据发生变化时,您可以使用Firebase的云功能编写运行某些JavaScript (在node.js环境中运行)的数据库触发器。您可以有效地使用它将更改从实时数据库发送到您控制的任何其他服务器。您可能需要在服务器上实现web钩子或其他端点才能接收数据。
为了在这样的功能中发出出站网络请求,你需要升级你的项目到火焰计划,如果你还没有。
发布于 2017-04-06 11:14:55
我不能很好地理解你的问题,你想达到什么目的?
您可以通过以下三种方式“保存”在您的应用程序上使用firebase完成的操作:
1)创建一个节点来记录事务,并使用childupdates将事务保存在其节点中,同时保存在"transactionsLog“(字段)这样的另一个节点中。
2)如果您只需要跟踪用户在应用程序中完成的事件,则可以使用firebase,并在每次发生事务时保存一个事件:https://firebase.google.com/docs/analytics/ios/start (get started)和事件 (记录事件)
3 )要在事务完成后执行更复杂的操作,可以在javascript (它是nodeJs环境)中使用Firebase函数(https://firebase.google.com/docs/functions/)来实现您想要的一切。
示例第一方法(Swift):
let key = ref.child("transactions").childByAutoId().key
let post = ["uid": userID,
"author": username,
"amount": amount,
"date": date]
let childUpdates = ["/transactions/\(key)": post,
"/transactionsLog/\(userID)/\(key)/": true]
ref.updateChildValues(childUpdates)https://stackoverflow.com/questions/43246395
复制相似问题