我在Firebase Google网上论坛中问了这个问题,但认为这实际上是错误的地方,因此我在此重新发布。希望没事。
关于Firebase云功能的EventContext的描述here很好。那里说,在messages/{messageId}
的Firestore创建中触发了一个事件,我应该能够...
def process_message(event, context):
# What's in the context?
print(dir(context))
# Can I access 'messageId'?
print(context.params['messageId'])
没有运气-context.params
不存在,并且dir(context)
返回['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'event_id', 'event_type', 'resource', 'timestamp']
-那里肯定没有params
。
文档还建议context.auth
在实时数据库触发器上可用,但在Firestore上不可用?很遗憾,因为这对于确保功能确实有用。
我在这里错过了什么吗?有人可以帮助我使用Python编写并由Firestore触发的Cloud Function访问context.auth
和/或context.params
吗?
谢谢。