iOS使用Firestore出现'Document path cannot be empty'报错是什么原因?
Firebase
FIRInvalidArgumentException 崩溃问题说明 报错内容
*** Terminating app due to uncaught exception 'FIRInvalidArgumentException', reason: 'Document path cannot be empty.' terminating with uncaught exception of type NSException
问题原因
该问题属于Firebase版本迭代带来的校验逻辑变更:旧版本Firebase中对document的路径校验仅检查参数是否为nil,不会校验空字符串;而最新版本Firebase会同时校验nil和空字符串两种情况,传入空字符串就会触发上述崩溃。
修复建议
- 调用document相关接口前,先对传入的路径参数做合法性校验,过滤空字符串、仅由空白字符组成的无效路径
- 从接口、本地存储等动态获取路径的场景,必须增加兜底逻辑,路径无效时直接跳过后续Firebase操作,避免崩溃
- 如需兼容新旧版本Firebase,路径为空时统一传入nil而非空字符串即可适配两套校验规则
内容的提问来源于stack exchange,提问作者Trevor
相关产品推荐
相关产品推荐

