IOS网络框架的Alamofire5.4高版本网络工具封装
生活随笔
收集整理的這篇文章主要介紹了
IOS网络框架的Alamofire5.4高版本网络工具封装
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
IOS網(wǎng)絡(luò)框架的Alamofire5.4高版本網(wǎng)絡(luò)工具封裝
網(wǎng)上一般的封裝都是過期的swift寫法,或者低版本的Alamofire,照搬照抄只會(huì)報(bào)錯(cuò)一大堆。令開發(fā)者很是頭疼。特此公開最新的網(wǎng)絡(luò)工具封裝。我只用最新版本的軟件,其他版本一概不用
pod 加入
寫法:
// Created by lujun on 2021/11/20. //import UIKit import Alamofireenum MethodType {case GETcase POST } class NetworkTools{static let sharedInstance : NetworkTools = NetworkTools()private init(){}func requestData(type: MethodType,urlString: String, parameters: [String : Any]? = nil,finishedCallback : @escaping ( _ results : Any?, _ err: NSError?) -> ()){if(type==MethodType.GET){Alamofire.AF.request(urlString).responseJSON { (response) inswitch response.result {case .success(let json):finishedCallback(json as Any,nil)breakcase .failure(let error):print("error:\(error)")finishedCallback(nil,error as NSError)break}}}if(type==MethodType.POST){Alamofire.AF.request(urlString, method: .post, parameters: parameters).responseJSON { (response) inswitch response.result {case .success(let json):finishedCallback(json as Any,nil)breakcase .failure(let erro):print("error:\(erro)")finishedCallback( nil,erro as NSError )break}}}}//類方法func requestDataWithParam(type: MethodType,urlString: String, parameters: [String : Any],finishedCallback : @escaping ( _ results : Any) -> ()){AF.request(urlString, parameters: parameters).responseJSON { (response) inswitch response.result {case .success(let json):finishedCallback(json)breakcase .failure(let error):print("error:\(error)")break}}} }使用單例,創(chuàng)建唯一的對(duì)象。
測(cè)試Post ,看看能不能拿到accessToken。
控制臺(tái)打印
Optional({"access_token" = "2.00tIZEpFEvWN6C38ab57404702UTsh";"expires_in" = 157679999;isRealName = true;"remind_in" = 157679999;uid = 5335345699; })總結(jié)
以上是生活随笔為你收集整理的IOS网络框架的Alamofire5.4高版本网络工具封装的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 手把手教你如何优化C语言程序
- 下一篇: iOS13后添加SceneDelegat