Apa yang saya coba capai adalah melakukan URLSession
permintaan dengan cepat 3. Saya melakukan tindakan ini dalam fungsi terpisah (agar tidak menulis kode secara terpisah untuk GET dan POST) dan mengembalikan URLSessionDataTask
serta menangani keberhasilan dan kegagalan dalam penutupan. Semacam seperti ini-
let task = URLSession.shared.dataTask(with: request) { (data, uRLResponse, responseError) in
DispatchQueue.main.async {
var httpResponse = uRLResponse as! HTTPURLResponse
if responseError != nil && httpResponse.statusCode == 200{
successHandler(data!)
}else{
if(responseError == nil){
//Trying to achieve something like below 2 lines
//Following line throws an error soo its not possible
//var errorTemp = Error(domain:"", code:httpResponse.statusCode, userInfo:nil)
//failureHandler(errorTemp)
}else{
failureHandler(responseError!)
}
}
}
}
Saya tidak ingin menangani kondisi kesalahan dalam fungsi ini dan ingin menghasilkan kesalahan menggunakan kode respons dan mengembalikan Kesalahan ini untuk menanganinya dari mana pun fungsi ini dipanggil. Adakah yang bisa memberi tahu saya bagaimana melakukan ini? Atau bukankah ini cara "Cepat" untuk menangani situasi seperti itu?
NSError
alih-alihError
di deklarasi (var errorTemp = NSError(...)
)