要运行示例项目,克隆仓库,然后首先从示例目录运行pod install
。
NLService可通过CocoaPods获取。要安装它,只需将以下行添加到您的Podfile中:
pod "NLService"
The simplest example
let service = NLRemoteService(baseURL: NSURL(string: "https://api.github.com")!, manager:NLAlamofireManager())
let resource = NLRemoteResource<NSDictionary>("/repos/juancruzmdq/NLService")
service.request(resource).load { (dict) in
switch dict {
case .Success(let dict):
print("API Result: \(dict)")
break
case .Error(let error):
print("API Error: \(error.localizedDescription)")
break
}
}
// Build Main Service
let service = NLRemoteService(baseURL: NSURL(string: "https://api.github.com")!, manager: NLAlamofireManager(headers: ["Header-Global":"value global"])) // optional global headers
// Build resource endpoint with parser
let repoInfo = NLRemoteResource<String>("/repos/juancruzmdq/NLService")
repoInfo.headers = ["Header-Repo":"value for repo"]
repoInfo.parser = = {( result )->ParseResult<String> in
guard let info = result as? NSDictionary else{
return .Error(NSError(domain: "ViewController", code: 0, localizedDescription: "Invalid response???"))
}
return .Success("\(info["id"]!) - \(info["name"]!)")
}
// Use service to create request to resource, and perform call (load) of the remote resource
api.request(repoInfo).load { (result) in
switch result {
case .Success(let string):
print("API Result: \(string)")
break
case .Error(let error):
print("API Error: \(error.localizedDescription)")
break
}
}
Juan Cruz Ghigliani, [email protected]
NLService可在MIT许可证下获得。有关更多信息,请参阅LICENSE文件。