Firestore 事务安全规则:缓存和限制
Firestore Transaction security rules: caching and limits
假设您在客户端上执行一个 Firestore 事务,您在其中创建了三个文档:a、b 和 c。
在安全规则中,您执行以下操作:
- a: 使用 getAfter
检查 b 和 c 是否存在
- b: 使用 getAfter
检查 a 和 c 是否存在
- c: 使用 getAfter
检查 a 和 b 是否存在
所以我的问题是这是否会导致 6 次读取计入限制,或者 Firestore 是否会缓存所有读取并且只会执行 3 次(甚至零次?)读取。
感谢您的帮助!
在规则评估期间读取文档时,在同一规则评估期间第二次读取同一文档将使用之前读取的数据。它不会导致额外的读取。
假设您在客户端上执行一个 Firestore 事务,您在其中创建了三个文档:a、b 和 c。
在安全规则中,您执行以下操作:
- a: 使用 getAfter 检查 b 和 c 是否存在
- b: 使用 getAfter 检查 a 和 c 是否存在
- c: 使用 getAfter 检查 a 和 b 是否存在
所以我的问题是这是否会导致 6 次读取计入限制,或者 Firestore 是否会缓存所有读取并且只会执行 3 次(甚至零次?)读取。
感谢您的帮助!
在规则评估期间读取文档时,在同一规则评估期间第二次读取同一文档将使用之前读取的数据。它不会导致额外的读取。