Firebase安全规则中root在多用户串行更新时的取值疑问
Firebase安全规则中
root的状态疑问解答 - 结论明确:当处理B的请求时,
root会包含A更新后的数据。 - 核心原因:Firebase服务器对并发请求是严格串行化处理的——A的请求完成(规则校验通过+数据写入)后,才会启动B的请求处理流程。此时数据库已经是A更新后的状态,
root作为当前数据库的完整根节点快照,自然包含A修改后的内容。 - 补充纠正:你之前对
root的理解有误,root.child(...)并非固定指向“old data”:data才是规则校验时,当前节点的旧数据;newData是本次请求要写入的新数据;root是整个数据库的实时状态快照,会随着之前请求的完成而更新。
内容的提问来源于stack exchange,提问作者Data overflow
相关产品推荐
相关产品推荐

