基于 AsyncHTTPClient。
Swift 包管理器是一个用于自动化 Swift 代码分发的工具,并且集成在 swift 编译器中。 它尚处于早期开发阶段,但 Graceful Networking 确实支持在受支持的平台上使用它。
设置好 Swift 包之后,添加 Graceful Networking 作为依赖项就像将其添加到 Package.swift 的 dependencies 值一样简单。
dependencies: [
.package(url: "https://github.com/OliverLetterer/GracefulNetworking.git", .upToNextMajor(from: "0.1.0"))
]
Graceful Networking 在一定程度上受到了 github.com/Alamofire/Alamofire 的启发。
NN.shared.get("https://jsonplaceholder.typicode.com/posts").response { response, error in
debugPrint(response)
}
struct PostResponse: Codable {
var id: Int
var title: String
var body: String
var userId: String
}
let parameters: [String: NNWWWURLFormEncodable] = [
"title": "title",
"body": "body",
"userId": "5"
]
NN.shared.post("https://jsonplaceholder.typicode.com/posts", parameters: parameters).responseDecodable(of: PostResponse.self) { response, error in
debugPrint(response)
}
let url = URL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent("image.png")
NN.shared.download("https://httpbin.org/image/png", destination: url) { respose, error in
debugPrint(respose)
}