Create/update 在数据存储中触发云函数

Create/update in datastore triggers Cloud function

我在 Google 数据存储中有一个数据库。我不知道如何使用云功能,但我想在创建或更新后触发事件。 不幸的是,文档对这个主题的理解很浅:https://cloud.google.com/appengine/docs/standard/java/datastore/callbacks

我不知道如何使用@PostPut 在创建或更新行后立即触发事件。

有人有基本示例的教程吗?

谢谢

Dan MacGrath 提供了 to a similar request (callbacks are indeed discussed below. Such solution doesn't exist yet. As a workaround, taking into account the current available triggers:

  1. HTTP——通过 HTTP 请求直接调用函数。
  2. 云存储
  3. 云Pub/Sub
  4. Firebase(数据库、存储、分析、授权)
  5. Stackdriver Logging—通过创建接收器将日志条目转发到 Pub/Sub 主题。然后就可以触发函数了。

我建议几个解决方案:

  1. 每次创建或更新行以触发链接的 Cloud Function 时,将内容保存在 Cloud Storage 的特定存储桶中。之后您可以删除存储桶内容。
  2. 通过创建接收器创建具有相同名称的日志,然后 forward them to Pub/Sub

编辑 1

  • Cloud Functions 的 Cloud Storage 触发器:Official Google doc and tutorial with a sample code in node.js 6 in Github
  • Cloud Pub/Sub Cloud Functions 触发器:Official Google doc and tutorial with a sample code in node.js 6 in Github(与之前相同)。

Cloud Datastore 不支持实时触发 CRUD(创建、读取、更新、删除)事件。

但是,您可以迁移到 Cloud Firestore,它确实支持这些操作的实时触发器(通过 Cloud Pub/Sub,可以调用 Cloud Function)。 Cloud Firestore 是 Cloud Datastore 的继任者,并可能在未来的某个时候最终取代它。