为什么 Firebase 云函数模拟器上没有调用 firestore onWrite 触发器?

2024-04-10

我有一个 firestore,里面有一个名为“chats”的集合;我使用 firestore 模拟器插入一个新文档,我期待onWrite当我跑步时触发被调用index.js本地在我的firebase云函数模拟器 https://firebase.google.com/docs/functions/beta-v1-diff(通过运行firebase emulators:start),但它永远不会。

我知道模拟器已连接到正确的 Firestore 模拟器,因为我可以读取数据(见下文),但我只是无法调用触发器。

// My setup:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

// We are able to fetch a document correctly, meaning at least my
// cloud functions emulator is hooked up to the firestore emulator!
admin.firestore().collection("chats").doc("eApXKLLXA4X6tIJtYpOx").get()
  .then(doc => {
      if (doc.exists) {
         console.log("Document data:", doc.data()); // <- this works!!
      } else {
         throw new Error("No sender document!");
      }
   })

// This never gets called when I insert a new document through the emulator UI!
exports.myFunction = functions.firestore
  .document('chats/{chat-id}')
  .onWrite((change, context) => { console.log("on write") });

尝试更改文档选择器chats/{chat-id} to chats/{chatId}。好像-此处禁止使用符号。如果我使用它,我会收到以下错误firebase-debug.log:

[调试] [2020-06-01T12:17:29.924Z] 2020年6月1日下午3:17:29 com.google.cloud.datastore.emulator.impl.util.WrappedStreamObserver onError 信息:操作失败:模式无效。原因:[69:-] 捕获表达式末尾应有“}”。

另一个原因可能是使用了错误的项目 ID,但似乎这不是你的情况。 看:模拟器中云函数的 Firestore 触发器被忽略 https://github.com/firebase/firebase-tools/issues/2078

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Firebase 云函数模拟器上没有调用 firestore onWrite 触发器? 的相关文章

随机推荐

  • Xcode 4 卡在“扫描工作副本”上

    我刚刚归档并提交了一个项目 当我返回打开该项目时 它挂在 扫描工作副本 上 我可以导航 但无法查看项目文件 这实际上只是一个链接问题 选择您的项目并确保您已打开 身份和类型 它位于右侧编辑器栏中 使用 查看 按钮切换打开和关闭 您可以在那里
  • FFmpeg 支持哪些编解码器和格式? [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我需要 FFmpeg 支持的编解码器和格式列表 我在哪里可以找到它 正确的编解码器 ffmpeg codecs Formats ffm
  • findOrCreate 与 include -sequelize.js

    我想创建一个比赛 如果不存在 以及Match 如果不存在 与锦标赛关联 let match created await Match findOrCreate where scoreHome 97 Tournament name USA So
  • PhpStorm 资源根的相对路径

    我使用 PhpStorm 9 并且我的项目结构与此类似 src elements element alfa element alfa html element alfa scss templates application html ind
  • 无法删除 nav_host_fragment 顶部的空间

    我刚刚实现了底部导航 AS 的默认设置 文件 gt 新建 gt 活动 gt 底部导航活动 除了顶部的空格之外 一切都很好nav host fragment 由于它是在 ConstraintLayout 中生成的 我尝试清理约束并设置顶部约束
  • 为什么 file_get_contents 不起作用?

    为什么file get contents not为我工作 在下面的测试文件代码中 似乎我搜索过的每个示例都列出了此函数 但它从未被执行 这是网络托管服务的问题吗 有人可以在他们的服务器上测试这段代码只是为了看看地理编码数组输出是否真的作为字
  • 无法通过 ngrok ssh 进入远程 Linux

    远程Linux计算机位于内部网络中 没有公共IP地址 所以我安装了ngrok ngrok tcp 22 ngrok by inconshreveable Ctrl C 退出 在线隧道状态版本2 0 19 2 0 17网页界面http 127
  • 如何在 django 评论中包含用户个人资料的图像/徽标

    我已将其发布在 django users 上 但尚未收到回复 所以我有自己的用户配置文件对象 用户的子类 其中一个字段是 imagefield 它 显然 用于用户上传他们的徽标 缩略图 问题是我如何才能将其包含在他们的评论中 有任何想法吗
  • phpMyAdmin 4.0.5 导出错误错误 - 有人知道它是否正在得到解决吗?

    phpMyAdmin 宣布 在 2013 年 9 月 1 日的几天内 他们将关闭其他资源 例如邮件列表和论坛 并推迟我们使用 StackOverflow StackExchange 我为小型 cPanel 托管服务提供一般支持 我的部分职责
  • Entity Framework Core - 未找到设计时服务

    我有一个非常基本的迁移文件 我正在执行dotnet ef database update verbose在包管理器控制台窗口中 SQL Server 中没有生成任何内容 包管理器控制台窗口中的最后几行输出如下所示 Finding desig
  • Nexus 5 上启动器图标的实际大小是多少?

    As the doc http developer android com design style iconography html launcher提到的 启动器图标是48 48dp 所以我认为我的 Nexus 5 上的启动器图标应该是
  • 更新列表框而不丢失所选项目,WPF

    列表框每秒更新一次 在工作期间 我需要选择其中的一些项目并执行命令 这是不可能的 因为列表框已更新并丢失了其选定的项目 ObservableCollection 是我列表中的 ViewModel 我心里有一些选择 也许还有更好的解决方案 检
  • 如何使用带有数据绑定的 Ext5 组合框

    我想使用一个组合框 它从数据绑定接收预选值 并且还从同一存储的数据绑定接收可能的选项 面板项配置如下所示 xtype combobox name language default fieldLabel Default Language mu
  • 函数调用后,参数指针不会保留其值[重复]

    这个问题在这里已经有答案了 我将 3 个指针 key K1Ptr K2Ptr 作为参数传递给函数 keyGenerator 但是当函数调用结束时 只有 key 指针保留函数调用中的值 而其他 2 个指针则不保留 我尝试了很多不同的事情 比如
  • malloc + size_t * 3 的地址对于任何类型都是对齐的吗?

    我正在构建一种动态数组 向量 但不是嵌入数据 通常是void 变成struct vector 我正在预留空间struct vector 一大块字节 使用数组的示例size t s include
  • 软件包“syncwave”/“mvcwt”不可用(对于 R 版本 3.0.2)[重复]

    这个问题在这里已经有答案了 我想安装软件包mvcwt and SynchWave但收到以下消息 Warning message package mvcwt is not available for R version 3 0 2 Warni
  • 检测音量按钮按下情况

    音量按钮通知功能未被调用 Code func listenVolumeButton Option 1 NSNotificationCenter defaultCenter addObserver self selector volumeCh
  • Visual Studio - 将文本粘贴到 cshtml 中会删除文本

    在 Visual studio 2022 v 17 2 1 中 当我将一些文本粘贴到 cshtml 文件中时 相同的文本似乎被复制 但随后立即被删除 包括现有文本的一部分 这似乎只在覆盖jquery代码时发生 在任何地方
  • Hibernate @Formula 不包括架构

    我有一个拥有财产的实体 Formula像这样 Entity Table name areasAuxiliar public final class AreaAuxiliar implements Serializable Id Column
  • 为什么 Firebase 云函数模拟器上没有调用 firestore onWrite 触发器?

    我有一个 firestore 里面有一个名为 chats 的集合 我使用 firestore 模拟器插入一个新文档 我期待onWrite当我跑步时触发被调用index js本地在我的firebase云函数模拟器 https firebase