Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么可能会阻止一个;“儿童被除名”;射击事件?_Javascript_Firebase_Firebase Realtime Database - Fatal编程技术网

Javascript 什么可能会阻止一个;“儿童被除名”;射击事件?

Javascript 什么可能会阻止一个;“儿童被除名”;射击事件?,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,考虑以下(简化)代码: (服务器端工作人员处理任务,将结果写入数据库的另一个位置,然后删除对象。) 任务对象已被删除,但子对象已删除事件从未触发 什么可以阻止已删除的子事件触发?检查安全规则: 如果将安全规则保留为以下默认值,则事件查询将不起作用: { "rules": { ".read": "auth != null", ".write": "auth != null", } } 此外,如果您的安全规则不允许对数据写入的位置进行读取访问(即,用户具有写入权限但没有读取

考虑以下(简化)代码:

(服务器端工作人员处理任务,将结果写入数据库的另一个位置,然后删除对象。)

任务对象已被删除,但
子对象已删除
事件从未触发


什么可以阻止
已删除的子事件触发?

检查安全规则:

如果将安全规则保留为以下默认值,则事件查询将不起作用:

{
  "rules": {
    ".read": "auth != null",
    ".write": "auth != null",
  }
}
此外,如果您的安全规则不允许对数据写入的位置进行读取访问(即,用户具有写入权限但没有读取权限),则事件查询将失败


事件查询返回更改数据的快照(在删除子事件的情况下删除数据),因此有必要进行读取访问。

我最初的假设是,任务执行得太快。我已经消除了处理时间这一因素:我在任务工作者处理代码时添加了人为延迟,但是,结果是一样的:removed
上的
事件从未触发。此外,我已将task添加到非根位置(
../queue/task/
),但这也没有解决问题。我很自信这是一个简单的问题,但不知怎么的,我还是忽略了错误。
{
  "rules": {
    ".read": "auth != null",
    ".write": "auth != null",
  }
}