我使用谷歌云功能来执行一些后台操作(例如,计算/分组当天的统计数据)。 在火力地堡数据库的路径上,当某些事件(更新,创建)这些功能被触发发生。
我正在寻找一种方法来提取已更新的路径(和参数)/创建,这样我可以只针对一小部分。 特别是,如果路径path /messages/{pushId}/original
已经更新,我想提取动态参数{pushId}
我的Python函数中。
作为回顾:
从云之证件 ,我们可以按照如下与各自的触发部署云功能:
下面gcloud指令部署将由更新事件的上触发的功能
path /messages/{pushId}/original
:
gcloud functions deploy YOUR_FUNCTION_NAME \
--trigger-event providers/google.firebase.database/eventTypes/ref.update \
--trigger-resource projects/YOUR-PROJECT-ID/instances/DATABASE-INSTANCE/refs/messages/{pushId}/original \
--runtime RUNTIME
在main.py
我们就可以写在上面的路径已被更新时将触发一个函数:
import json
def hello_rtdb(data, context):
""" Triggered by a change to a Firebase RTDB reference.
Args:
data (dict): The event payload.
context (google.cloud.functions.Context): Metadata for the event.
"""
trigger_resource = context.resource
print('Function triggered by change to: %s' % trigger_resource)
print('Admin?: %s' % data.get("admin", False))
print('Delta:')
print(json.dumps(data["delta"]))
缺失的一环 ,现在是我们如何使用数据,上下文获取参数{pushId}
?