【发布时间】:2022-01-27 09:27:51
【问题描述】:
我在观察来自 firebase 实时数据库的数据时收到以下错误。我想做的是,如果错误是 Permission Denied,我想做一个不同的动作。如何判断错误是否为 Permission Denied?
错误:
可选(错误域=com.firebase Code=1 "Permission Denied" UserInfo={NSLocalizedDescription=Permission Denied})
我的代码:
func observeData(completion: @escaping (Bool) -> Void){
Database.database().reference().child("values").observe(.value, with: { (snap) in
completion(true)
}){ (error) in
let errorCode = (error as NSError).code
if errorCode == .?????? { //-->> what to come here
self.anotherFunc() //--> if Permission Denied call this func
completion(false)
}else{
completion(true)
}
}
}
【问题讨论】:
-
您的代码实际上非常好。这是细微的变化;您有一个调用“观察数据”的函数,该函数在该调用之后包含一个闭包。在 - that - 闭包中,您正在处理返回值 true 或 false。如果返回 false 值,则调用您要执行的下一个函数。
标签: swift firebase firebase-realtime-database