firebase数据库REST更新数字数据
我正在使用firebase数据库REST api发布数据。结构是firebase数据库REST更新数字数据,rest,firebase,firebase-realtime-database,Rest,Firebase,Firebase Realtime Database,我正在使用firebase数据库REST api发布数据。结构是 orders: { "milk" : 10, "cream" : 13 } 我的用例是将数量增加1,将其视为: orders: { "milk" : 11, "cream" : 14 } 一般来说,我看到两个REST调用: 拨打GET电话以获取我的客户机中的当前号码 使用更新的号码拨打PUT电话 有没有一种方法可以通过单个调用来增加当前值?如果您使用的是一个Firebase SDK,这将通过事务()完成
orders: {
"milk" : 10,
"cream" : 13
}
我的用例是将数量增加1,将其视为:
orders: {
"milk" : 11,
"cream" : 14
}
一般来说,我看到两个REST调用:
有没有一种方法可以通过单个调用来增加当前值?如果您使用的是一个Firebase SDK,这将通过事务()完成 RESTAPI中目前没有等效的工具,可以让您一次性完成这项工作
您可以考虑使用安全规则来确保只允许有效的转换。但这很容易变得相当棘手,正如我在这里的回答中所看到的:。
如果您需要一个HTTP端点,它可以自动获取并设置实时数据库中的值,您可以使用创建一个使用来执行并将更新的计数输出回调用方。我不需要更新的计数器,只需要先获取计数器,然后再更新它。您可以按照自己喜欢的方式对函数进行编码。如果您不想返回更新后的值,则无需这样写。这是完全有效的!为什么要投否决票?您可以侦听任何Firebase事件,然后使用函数更新计数器。例如,您可以创建另一个节点“user_orders”:{“jwdbawodn”{“item”:“milk”,“UID”:“dawdawd”,“timestamp”:131233412}}。通过这种方式,任何用户都可以通过添加新订单来创建增加。创建新订单时,您可以在其中列出并使用函数增加订单。这还有一个额外的好处,即您可以快速获得最近用户活动的列表。