resty
简单的 HTTP 网络库,支持 Async/Await 和 Codable。
let todos: [Todo] = try await FakeAPI.todos.request()
安装
CocoaPods
要使用 CocoaPods 将 Resty 集成到您的 Xcode 项目中,请指定它位于您的 Podfile
pod 'Resty'
然后,运行以下命令
$ pod install
Swift 包管理器
要使用 Swift 包管理器作为包使用 SwiftyContacts,请在上面的 Swift 包管理器 文件中添加以下内容。
dependencies: [
.package(url: "https://github.com/satishbabariya/Resty.git", .upToNextMajor(from: "1.0.0"))
]
开始使用
将SwiftyContacts导入到您的项目中
import Resty
使用codable async/await进行请求
let todos: [Todo] = try await FakeAPI.todos.request()
使用codable进行请求
FakeAPI.todos.request(type: [Todo].self) { result in
switch result {
case let .success(todos):
// Array of [Todo]
case let .failure(error):
// error
}
}
REST API 配置
struct Todo: Codable {
let id: Int
let title: String
let completed: Bool
}
enum FakeAPI: Resty {
case todos
}
extension FakeAPI {
var host: String {
return "https://jsonplaceholder.typicode.com/"
}
var path: String {
return ""
}
var endpoint: String {
switch self {
case .todos:
return "todos"
}
}
var method: HTTPMethod {
switch self {
case .todos:
return .get
}
}
var parameters: [String: Any]? {
return nil
}
var headers: [String: String]? {
return nil
}
}
作者
萨蒂什·巴巴里亚,[email protected]
许可
Resty是在MIT许可下提供的。更多信息请查看LICENSE文件。