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
检查firebase实时数据库安全规则中是否存在Firestore文档的方法?_Firebase_Firebase Realtime Database_Google Cloud Firestore_Google Cloud Functions_Firebase Security - Fatal编程技术网

检查firebase实时数据库安全规则中是否存在Firestore文档的方法?

检查firebase实时数据库安全规则中是否存在Firestore文档的方法?,firebase,firebase-realtime-database,google-cloud-firestore,google-cloud-functions,firebase-security,Firebase,Firebase Realtime Database,Google Cloud Firestore,Google Cloud Functions,Firebase Security,我将Firestore文档ID存储在firebase数据库节点中,并且firebase数据库中的安全规则仅允许在Firestore中引用的文档不存在时删除和ID。有没有办法做到这一点?如果没有,是否有方法从firebase数据库规则调用函数以检查ID是否引用Firestore中的现有文档并使其返回值?否,您不能。安全规则无权访问Firestore,虽然Firebase函数有一个onDelete触发器,但它们是在数据库中已经实现更改后执行的。您不能说从何处访问数据库(web或app)但您可以使用要

我将Firestore文档ID存储在firebase数据库节点中,并且firebase数据库中的安全规则仅允许在Firestore中引用的文档不存在时删除和ID。有没有办法做到这一点?如果没有,是否有方法从firebase数据库规则调用函数以检查ID是否引用Firestore中的现有文档并使其返回值?

否,您不能。安全规则无权访问Firestore,虽然Firebase函数有一个
onDelete
触发器,但它们是在数据库中已经实现更改后执行的。

您不能说从何处访问数据库(web或app)但您可以使用要删除的文档id调用云函数,然后云函数可以检查id引用的数据是否存在,如果不存在,则从firestore集合中删除id

您还可以在云函数中添加任何需要的附加逻辑

另外


讨论如何使用云功能扩展firestore功能。

您的标题提到Firebase实时数据库,但问题只涉及firestore。您可能需要更改标题。我需要检查Firestore文档id是否引用了实时数据库安全规则中的现有文档以允许删除,我询问是否可以检查Firestore中的文档是否存在于firebase实时数据库安全规则中触发前未执行的功能,并且不能取消acton