当前位置: 首页 > 工具软件 > Alamofire > 使用案例 >

Alamofire

经景辉
2023-12-01

Alamofire

先会用,然后再封装和拓展,之后再看源码,可能才算懂点。

Alamofire这个Swift网络框架还是挺好用的,拿来就可以直接使用。
下面是基于 Alamofire 4.8.1。

  1. 导入头文件
import Alamofire
import SwiftyJSON
  1. 声明一个SessionManager对象
var manager: Alamofire.SessionManager?
  1. 初始化SessionManager对象
let sessionConfig = URLSessionConfiguration.default
sessionConfig.timeoutIntervalForRequest = 30
self.manager = Alamofire.SessionManager(configuration: sessionConfig)
  1. 发起HTTP请求
manager?.request(loginURL!, method: .get, parameters: nil, encoding: JSONEncoding.default, headers: headers).validate().responseJSON { [weak self] response in
    guard let strongSelf = self else {
        return
    }
    switch response.result {
    case .success(let value):
        let json = JSON(value)
        print(json)
        break
    case .failure(let error):
        strongSelf.requestFailed(error as NSError)
        break
    }
}

配合SwiftyJSON来使用,如上发起一起get请求,如果还有其他参数,传一个parameters,框架里面会将需要拼的参数帮我们添加到url中。拿来直接就可以用还是挺方便的。

参考:
封装Alamofire: https://www.bilibili.com/read/cv7520682
HWNetworking : https://github.com/HouWan/HWNetworking

Alamofire已经封装的很好了,一般的拿来直接用。
如果后台一般需要验签啊什么的,拿来稍微封装一下就够用了。
感觉项目不是特别需求的话,不需要过度封装,简单的封装保留requestTask和request两个类抽象出来就能满足需求了。

 类似资料: