Я новичок в iOS и быстро использую свой проект. Я использую Alamofire, я успешно обрабатываю данные, но не могу обрабатывать различные типы серверных кодов простым способом, и любой может помочь мне решить мою проблему.
Это мой сервисный звонок
func requestPOSTURL(_ strURL : String, params : [String : AnyObject]?, headers : [String : String]?, success:@escaping (JSON) -> Void, failure:@escaping (Error) -> Void){
Alamofire.request(strURL, method: .post, parameters: params, encoding: JSONEncoding.default, headers: headers).responseJSON { (responseObject) -> Void in
//print(responseObject)
if responseObject.result.isSuccess {
let resJson = JSON(responseObject.result.value!)
success(resJson)
}
if responseObject.result.isFailure {
let error : Error = responseObject.result.error!
let dic = ["NSLocalizedDescription" : error.localizedDescription]
failure(error)
}
}
}
Я использую в своих классах вот так.
AFWrapper.AFsharedInstance.requestPOSTURL(Post_Hod_Indexes_sections_URL, params: dicParams, headers: headers, success: {
(json) in
print(json)
DispatchQueue.main.async {
self.hideSpinner()
let swiftyJsonVar = JSON(json)
let status = swiftyJsonVar["status"].rawString() as!String
print("status", status)
if status.isEqual("404") {
let message = swiftyJsonVar["message"].rawString()
self.displayMsg(title: "Oops!", msg: message!, style: .alert)
return
}
else if status.isEqual("200") {
let message = swiftyJsonVar["message"].rawString()
self.displayMsg(title: "", msg: message!, style: .alert)
return
}
else if status.isEqual("500") {
let message = swiftyJsonVar["message"].rawString()
self.displayMsg(title: "", msg: message!, style: .alert)
return
} else {
let message = swiftyJsonVar["message"].rawString()
self.displayMsg(title: "", msg: message!, style: .alert)
return
}
}
}, failure: {
(error) in
self.hideSpinner()
self.displayMsg(title: "Oops!", msg: "Something went wrong try again after sometime", style: .alert)
})
}