NetworkSession
这是用 Swift 编写的网络抽象层
⚒ 安装
Carthage
要安装它,只需将以下行添加到您的 .cartfile 中:
github "danielrsousa/NetworkSession" ~> 1.1.2
❓ 如何使用
步骤 1 创建您的请求对象
struct MyRequest: NetworkRequestProtocol {
var baseURL = "https://blockchain.info"
var path: String = "/ticker"
var method: HTTPMethod = .get
var headers: [String : String]?
var parameters: [String : Any]
}
步骤 2 使用 Decodable 协议创建您的模型
struct CurrencyModel: Decodable {
let USD: CoinModel
let BRL: CoinModel
struct CoinModel: Decodable {
let last: Float
let buy: Float
let sell: Float
let symbol: String
}
}
现在您需要创建一个 NetworkSession 实例并调用方法 .request
,不要忘记 import NetworkSession
import Foundation
import NetworkSession
class MyClass {
let networkSession: NetworkProtocol = NetworkSession.shared
func fetch() {
let request = MyRequest(parameters: [:])
networkSession.request(request: request, result: {(result: Result<CurrencyModel?, NetworkError>) in
switch result {
case .success(let response):
guard let model = response else { return }
print(model.BRL.symbol)
case .failure(let error):
print(error.localizedDescription)
}
})
}
}
📝 许可协议
NetworkSession 使用 MIT 许可协议发布。