Firebase云存储功能触发器-确定新创建文件的用户ID令牌

问题描述 投票:0回答:1

[摘要]

对于新上传到Firebase Cloud Storage的文件,我想确定谁从触发的Firebase函数中上传了文件(用户的ID令牌)。

[DETAILS]

我允许经过Firebase身份验证的移动用户将文件上传到云端存储。我通过onFinalize通过Firebase Function附加了Firebase Cloud Storage触发器。将新文件添加到Cloud Storage后,它将触发该功能。

可以从该功能内确定移动用户的ID令牌,以便我可以使用Firebase Cloud Messaging向后发送消息?还是我必须像之前一样上传文件,然后在上传完成后对上传的文件进行引用,然后将元数据应用于该文件(例如,添加属于移动用户的用户ID令牌)?然后,我将不得不在元数据更改上启用Firebase Function触发器-发生更改时,我可以读出新上载的文件所属的ID令牌。

Mobile:Java Android

Firebase Cloud Functions:Node.js

android firebase firebase-authentication google-cloud-functions firebase-storage
1个回答
0
投票

最可靠的方法是:

  1. 在上传之前将设备令牌与用户的UID关联。每个用户可能有多个活动设备令牌,具体取决于用户使用的设备数量。这很正常。
  2. 升级文件后,还应使用用户的UID将元数据附加到文件中。您可以使用安全规则确保这是正确的。
  3. 在触发的功能中,将安全的UID与先前保存的令牌进行匹配,并向每个令牌发送有关上传的消息。
© www.soinside.com 2019 - 2024. All rights reserved.