云端 运行 或 Kubernetes 上的 Firebase 实时数据库触发器,而非云功能
Firebase Realtime Database Triggers on Cloud Run or Kubernetes, Not Cloud Functions
基于 Firebase documentation,可以通过以下方式创建一个云函数,当文档在 Firebase 数据库上 added/updated/deleted 时触发:
functions.database.ref('/messages/{pushId}/original').onUpdate();
但是,使用 Node.js 管理 SDK,当我调用以下内容时:
admin.database().ref("/messages/{pushId}/original").onUpdate();
它returns错误:
TypeError: admin.database(...).ref(...).onUpdate is not a function
我们还应该做些什么才能访问 Cloud 运行 或 Kubernetes 上的 Firebase 实时数据库触发器?
firebaser 在这里
onUpdate
方法仅存在于 firebase-functions
SDK 和 GCP 上等效的 Cloud Functions 中。它在 Firebase Admin SDK 中不存在,这就是为什么当您尝试在那里使用它时出现错误的原因。
虽然 可能 可以在云上接收实时数据库事件 运行(我自己还没有尝试过),但您必须遵循概述的过程对于 Eventarc on Cloud Run and then wire up the Realtime Database events,如此处所述。
更新:正如一位队友所指出的,您今天可以通过 Eventarc 接收的实时数据库触发器用于管理事件,例如数据库实例的创建和删除。数据级事件的触发器正在开发中,但尚不可用(也没有任何时间表)。
基于 Firebase documentation,可以通过以下方式创建一个云函数,当文档在 Firebase 数据库上 added/updated/deleted 时触发:
functions.database.ref('/messages/{pushId}/original').onUpdate();
但是,使用 Node.js 管理 SDK,当我调用以下内容时:
admin.database().ref("/messages/{pushId}/original").onUpdate();
它returns错误:
TypeError: admin.database(...).ref(...).onUpdate is not a function
我们还应该做些什么才能访问 Cloud 运行 或 Kubernetes 上的 Firebase 实时数据库触发器?
firebaser 在这里
onUpdate
方法仅存在于 firebase-functions
SDK 和 GCP 上等效的 Cloud Functions 中。它在 Firebase Admin SDK 中不存在,这就是为什么当您尝试在那里使用它时出现错误的原因。
虽然 可能 可以在云上接收实时数据库事件 运行(我自己还没有尝试过),但您必须遵循概述的过程对于 Eventarc on Cloud Run and then wire up the Realtime Database events,如此处所述。
更新:正如一位队友所指出的,您今天可以通过 Eventarc 接收的实时数据库触发器用于管理事件,例如数据库实例的创建和删除。数据级事件的触发器正在开发中,但尚不可用(也没有任何时间表)。