我使用 Alamofire 网络请求,想处理错误消息,
我的代码:
class NetWorkingEngine: NSObject {
typealias CreateNetWorkBlockSuccess = (_ responseobject:Any) -> ();
typealias CreateNetWorkBlockFail = (_ responseobject:NSDictionary) -> ();
func getDataFun(URL:String,netWorkingBlockSuccess:@escaping CreateNetWorkBlockSuccess,netWorkingBlockField:@escaping CreateNetWorkBlockField) -> Void {
Alamofire.request(URL).responseJSON { (responseObject) in
if responseObject.result.isSuccess {
netWorkingBlockSuccess(responseObject.data!);
}else{
netWorkingBlockFail(responseObject.result);
}
}
}
}
但要排队
netWorkingBlockFail(responseObject.result)
错误
cannot convert value of type “Result<Any>” to expected argument type "NSDictionary"
我该怎么办?
更新:
I want to resquert Error Info, if you error request,Error info is 'Any',But how to 'Error info' convert Dictionary?
最佳答案
您可以使用 [:] 类型将 Any 类型转换为 Dictionary。假设你有一个名为 person
的变量,它是 Any 类型;然后使用以下代码:
let personDictionary = (person as! [String:String])["name"]
...其中 name
是字典中的键。
关于ios - 如何在 Swift3 中将 Any 转换为字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42799799/