【发布时间】:2020-06-18 16:21:30
【问题描述】:
我确信这些是常见的情况,但在研究了几个小时后,我真的找不到常见的做法是什么。也许在 Firebase 方面有更多经验的人可以为我指明正确的方向。
我有两种特殊情况:
1。运行一次的代码
示例 1: 向 Firestore 中的所有用户添加新数据,这是新功能所必需的
示例 2: 开始将数据复制到现有文档中
我目前在云函数中编写代码,并在 firestore 事件(“隐藏”文档的onUpdate)上运行它,然后如果一切顺利,我会立即删除该函数。
我还增加了此函数的超时和内存,因为这个想法可能会更新数百万个文档。
2。从 firebase 控制台(或命令行)手动触发函数
示例:在应用中授予用户管理员权限(设置自定义声明和 Firestore 数据的功能)。我们没有时间实现后台,因此从 firebase 门户网站/控制台执行此操作是理想的,并指定用户 ID。
我当前的解决方案是使用https function,并从 GCP 门户运行它(在函数的“测试”选项卡上,能够传递 json)。但是该功能可以公开触发,我不太喜欢...
这些场景的常见做法是什么?
【问题讨论】:
-
在这两种情况下,我都会使用命令行节点脚本。对于第二个示例,如果您有时间并且非技术人员需要能够进行这些更改,您可以使用 Firebase 管理 SDK 构建一个非常简单的管理 UI。
-
谢谢@KevinRenskers,我会查查的!
标签: firebase google-cloud-firestore google-cloud-functions firebase-admin