Firebase onCreate 触发器:无法获取除 UNAUTHENTICATED 之外的 authType

2024-01-06

使用具有以下规则的 Firebase 实时数据库:

{
    "rules": {
        "messages": {
            ".read": "auth != null",
            ".write": "auth != null"
        }
    }
}

并且,将此触发器定义为:

exports.localOnCreate = functions.database.ref('/messages/{messageId}')
    .onCreate((snap, context) => {
        console.log(context);
    });

当我在测试网站上运行它时(通过谷歌验证):

firebase.database().ref('/messages').push().set({
    'hi': 'from-web'
}).then( function(result) {
    console.log(result);
    ...
})

我在 Firebase 控制台功能日志中看到了这一点:

{
    eventId: '............',
    timestamp: '2018-07-27T20:51:50.943Z',
    eventType: 'google.firebase.database.ref.create',
    resource: {
        service: 'firebaseio.com',
        name: 'projects/_/instances/..../refs/messages/-LISVklGLfbcfrFvnylZ'
    },
    authType: 'UNAUTHENTICATED',
    auth: null,
    params: {
        messageId: '-LISVklGLfbcfrFvnylZ'
    }
}

如果我在 web 应用程序中进行了身份验证,为什么我会收到authType: '未经身份验证', and 授权:空,在触发器“上下文”(第二个)参数中?

而且,正如我所见云函数参考 https://firebase.google.com/docs/reference/functions/functions#.CloudFunction,这个函数应该只接收一个参数,一个 Event 对象,但似乎情况并非如此实时数据库触发器 https://firebase.google.com/docs/functions/database-events,也不根据我的测试。最后的冲突让我完全困惑。任何澄清将不胜感激。


嘿@RodrigoMata 和@claytronicon,这是一个错误。我创建了一个 github 问题,他们推出了一个新版本 v2.0.4,其中包含针对 RTDB 事件中的 authType 的修复。https://github.com/firebase/firebase-functions/pull/304 https://github.com/firebase/firebase-functions/pull/304

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

Firebase onCreate 触发器:无法获取除 UNAUTHENTICATED 之外的 authType 的相关文章

随机推荐

  • 为与我们的服务器交互的 chrome 扩展实现 google oauth2

    想要什么 一个chrome扩展 它使用google ooauth2 0登录扩展 并使用访问令牌将他的操作数据安全地发送到我的服务器 我从访问令牌获取用户详细信息并保存他的操作 服务器在php中实现 我做了什么 使用重定向 URL 注册 Go
  • Active Admin 和 Apartment Gem

    我是 Active Admin 的新手 但从目前为止我所看到的情况来看 我认为这很容易实现 我有一个带有公寓宝石的应用程序来添加多租户 我正在向我的应用程序添加活动管理员 Apartment 使用 PostgreSQL 模式来隔离数据 例如
  • 是否可以阻止您的网站在另一个域的框架集和 IFrame 内运行?

    最近我们遇到了一个问题 其他网站在一个框架集中运行我们的电子商务网站 而我们的网站 附加了违规者附属 ID 是单个全宽框架中的唯一内容 所以本质上它看起来和感觉就像我们的网站 其 URL 位于顶部 我们可以切断他们的会员 ID 这会让他们这
  • Python tkinter PhotoImage 无法正常工作

    我正在尝试使用 tkinter 但这段代码不起作用 我想知道是否有人知道为什么 谢谢 from tkinter import window Tk window title tkinter stuff photo1 PhotoImage fi
  • 如何找出计划任务的下一次运行时间?

    在 ColdFusion 9 中 是否有一种快速方法可以找出计划任务下次尝试运行的时间 我宁愿调用较低级别的 API 等来让 CF 计算它 以与通常相同的方式 我已经放弃了各种服务 并没有看到任何明显的方法可以调用 这会有所帮助 AFAIK
  • 重写Subject.next方法

    我有以下代码 我想在其中覆盖next有一些自定义逻辑 这种方式行不通 但只有在以下情况下才有效next是一个带有箭头函数的属性 其背后的原因是什么 export class Store
  • 合并具有相似名称的列

    我有一个带有非常烦人的变量名的数据框 基本上我对同一变量的观察分布在变量 g1 param1 g2 param1 g3 param1 等中 我想将它们全部加入到 1 个名为 param1 的变量 列中 g1 param1 g2 param1
  • 谷歌地点 API 是免费的吗? [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我想用谷歌地点 API在网络应用程序中 我只是想确认API是否免费 如果是付费功能那么收费是多少 您可以查看每个API的定价here
  • C# 应用程序在远程上总是冻结

    我正在开发一个 C 应用程序 Net 3 5 Win Forms 该应用程序在服务器上运行 并由用户使用远程桌面访问 应用程序在远程计算机上看似随机的情况下一直冻结 即所有 GUI 组件都变成白色 任务管理器报告应用程序没有响应 但在本地运
  • 如何通过邮递员发送graphql查询?

    I use POST type URL http graphql Body query query noteTypes name label labelColor groupName groupLabel imageUrl 但它返回 mes
  • SAPUI5 表达式绑定

    是否可以将控件属性绑定到具有动态属性名称的模型 例如存储在另一个模型字段中 我以为我们可以使用 SAPUI5表达式绑定 https sapui5 hana ondemand com docs guide daf6852a04b44d1189
  • 在 Android 中的 BOOT_COMPLETE 上,未从 AndroidManifest 调用 BroadcastReceiver

    在我的 Android 应用程序中 我想运行Service无需打开 运行我的应用程序 为此我延长了BroadcastReciever班级 但是这个BroadcastReceiver类未被调用AndroidManifest xml on BO
  • 使用 jquery 拖放

    我有两个基于 jquery 的列表 示例是here http devheart org examples jquery customizable layout using drag and drop 2 saving and loading
  • 在 C# 桌面应用程序中存储我的 Amazon 凭证

    我正在考虑在桌面应用程序中使用 Amazon S3 和 simpleDB 我遇到的主要问题是我需要将我的 aws 凭证存储在应用程序中或使用其他方案 我猜想将它们存储在应用程序中是不可能的 因为它们很容易被挑选出来 另一种选择是创建一个 W
  • 如何在 Angular.js 中解析 Int

    也许 这是最简单的事情 但我无法将字符串解析为角度中的 Int 我正在尝试做的事情
  • MISRA C++ 2008 规则 5-2-7 违规:具有指针类型的对象不得直接或间接转换为不相关的指针类型

    在以下示例中 void bad function char t ptr 0 MISRA doesn t complains here it allows cast of char to void pointer void p2 ptr th
  • Magento 产品使用 SQL 查询从数据库导入

    Magento 在其数据库系统中使用 EAV 结构 我有这个查询 它为我提供了我的 magento 商店中的产品 ID 和产品名称 SELECT e entity id AS product id var value AS product
  • 如何以 SVG 形式获取 matplotlib 图的输出?

    我需要获取 matplotlib 图的输出并将其转换为可以在激光切割机上使用的 SVG 路径 import matplotlib pyplot as plt import numpy as np x np arange 0 100 0 00
  • Android 应用程序从 linkedin 访问令牌

    首先 是否可以使用 facebook twitter 等 Android 应用程序添加 linkedin 我读过很多博客 但无法在我的应用程序中实现 linkedin 我已达到应用程序的用户授权流程 用户输入其用户名和密码 但是当他输入 5
  • Firebase onCreate 触发器:无法获取除 UNAUTHENTICATED 之外的 authType

    使用具有以下规则的 Firebase 实时数据库 rules messages read auth null write auth null 并且 将此触发器定义为 exports localOnCreate functions datab