【问题标题】:cloud function - firestore: event.data.toJSON is not a function云函数 - firestore:event.data.toJSON 不是函数
【发布时间】:2023-04-01 02:35:01
【问题描述】:

根据文档,它看起来像 event.data 传递给 auth.user().onCreate 应该是UserRecord
https://firebase.google.com/docs/functions/auth-events#access_user_attributes
https://firebase.google.com/docs/reference/functions/functions.auth.UserRecord

但是在我的云功能中,如果我这样做event.data.toJSON(),我会得到

TypeError: event.data.toJSON 不是函数

我想将数据写入 Firestore。为了得到我必须做的数据

JSON.parse(JSON.stringify(event.data));

获取用户数据的普通对象表示的正确方法是什么?

【问题讨论】:

  • 这不是 const user = event.data;直接工作?
  • 不,不幸的是它没有。
  • event.data 实现与 Firebase Admin SDK 实现不同,这解释了为什么错过了这一点。它应该被修复。同时,您可以使用 Admin SDK 并使用事件数据提供的uid 调用getUser。这将返回带有toJSON API 的UserRecord

标签: javascript firebase firebase-authentication google-cloud-functions


【解决方案1】:

对我来说,这似乎是 SDK 中的一个错误。我向团队提出了一个问题。

在解决此问题之前,IMO 的解决方法是将值复制到纯 JavaScript 对象并使用它添加到 Firestore。

【讨论】:

  • 为什么在 Cloud Firestore 触发器中使用 event.data.data() 时没有获取数据
猜你喜欢
  • 2020-11-05
  • 2017-10-07
  • 1970-01-01
  • 2018-04-19
  • 2020-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多