OC開發(fā)中網(wǎng)絡(luò)請求類我們大多會使用AFNetworking,在swift中知名度較高的網(wǎng)絡(luò)請求三方是Alamofire。
使用方法:

可復(fù)制代碼:
func postRequest(urlStr:String, parameters:Parameters, finishCallBack:@escaping(_ responseObject:AnyObject?, _ error:Error?) -> ()) {
? ? ? ? Alamofire.request(urlStr, method: .post, parameters: parameters).responseJSON { (returnResult) in
? ? ? ? ? ? print("secondMethod --> POST 請求 --> returnResult = \(returnResult)")
? ? ? ? ? ? // 判斷網(wǎng)絡(luò)請求是否出錯
? ? ? ? ? ? if returnResult.result.isSuccess{
? ? ? ? ? ? ? ? print("成功...")
? ? ? ? ? ? ? ? print("===============\(returnResult.result)")
? ? ? ? ? ? ? ? finishCallBack(returnResult.result as AnyObject, returnResult.error)
? ? ? ? ? ? ? ? if let value = returnResult.result.value{
? ? ? ? ? ? ? ? ? ? print("value:====\(value)")
? ? ? ? ? ? ? ? ? ? let json = JSON(value)? // JSON數(shù)據(jù)轉(zhuǎn)成對象
? ? ? ? ? ? ? ? ? ? let user = json["data"]["niu_index_response"]
? ? ? ? ? ? ? ? ? ? print(user)
? ? ? ? ? ? ? ? ? ? // 字典轉(zhuǎn)模型
? ? ? ? ? ? ? ? ? ? let personModel = Permodel.init(json: user)
? ? ? ? ? ? ? ? ? ? print(personModel.nickname)
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? print("出錯...")
? ? ? ? ? ? ? ? print(returnResult.result.error!)
? ? ? ? ? ? ? ? finishCallBack(returnResult.result as AnyObject, returnResult.error)
? ? ? ? ? ? }
? ? ? ? }
? ? }
本人使用Alamofire和使用AFNetworking是同一個思路,在網(wǎng)絡(luò)請求成功后將請求的數(shù)據(jù)進(jìn)行一個回調(diào),傳回給使用網(wǎng)絡(luò)請求的當(dāng)前類。對數(shù)據(jù)解析使用到了SwiftyJSON這個三方庫,將JSON數(shù)據(jù)轉(zhuǎn)成對象(一般是字典或數(shù)組)。
本篇文章到這里就結(jié)束了,愿大家加班不多工資多,男同胞都有女朋友,女同胞都有男朋友。??