NLService 0.3.0

NLService 0.3.0

测试测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2016年8月
SPM支持SPM

Juan Cruz Ghigliani维护。



 
依赖项
Ono>= 0
Alamofire>= 0
 

NLService 0.3.0

NLService

示例

要运行示例项目,克隆仓库,然后首先从示例目录运行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文件。