APIKit is a type-safe networking abstraction layer that associates request type with response type.
// SearchRepositoriesRequest conforms to Request protocol.
let request = SearchRepositoriesRequest(query: "swift")
// Session receives an instance of a type that conforms to Request.
Session.send(request) { result in
switch result {
case .success(let response):
// Type of `response` is `[Repository]`,
// which is inferred from `SearchRepositoriesRequest`.
print(response)
case .failure(let error):
self.printError(error)
}
}
- Swift 3.0
- iOS 8.0 or later
- Mac OS 10.10 or later
- watchOS 2.0 or later
- tvOS 9.0 or later
If you use Swift 2.2 or 2.3, try APIKit 2.0.5.
- Insert
github "ishkawa/APIKit" ~> 3.0
to your Cartfile. - Run
carthage update
. - Link your app with
APIKit.framework
andResult.framework
inCarthage/Build
.
- Insert
pod 'APIKit', '~> 3.0'
to your Podfile. - Run
pod install
.
Note: CocoaPods 1.1.0 is required to install APIKit 3.