AlamofireGenome 1.0.1

AlamofireGenome 1.0.1

测试已测试
Lang语言 SwiftSwift
许可证 MIT
发布最后发布2016年3月
SPM支持 SPM

Dan HodosJohn Dzak 维护。



 
依赖于
Alamofire~> 3.0
Genome~> 1.0
 

  • 作者:
  • Dan Hodos 和 John Dzak

AlamofireGenome

一个 Alamofire 扩展,它使用 Genome 自动将 JSON 转换为 Swift 对象。

安装

使用方法

让我们假设我们想要查询 GitHub API 的仓库信息。为了存储检索到的数据,我们可以定义以下简单的数据结构

struct GithubRepository {
  var name: String!
  var fullName: String!
  var description: String!
}

extension GithubRepository: BasicMappable {
  mutating func sequence(map: Map) throws {
    try name <~> map["name"]
    try fullName <~> map["full_name"]
    try description <~> map["description"]
  }
}

获取单个对象

获取单个仓库,可以使用以下代码

let url = "https://api.github.com/repos/tablexi/AlamofireGenome"
Alamofire.request(.GET, url).responseObject { response: (Response<GithubRepository, NSError>) in
  switch response.result {
    case .Success(let repository): // ...
    case .Failure(let error): // ...
  }
}

获取对象数组

获取仓库列表,可以使用以下代码

let url = "https://api.github.com/orgs/tablexi/repos"
Alamofire.request(.GET, url).responseArray { response: (Response<[GithubRepository], NSError>) in
  switch response.result {
    case .Success(let repositories): // ...
    case .Failure(let error): // ...
  }
}

贡献

  1. git clone <repo_url>
  2. cd AlamofireGenome
  3. ./bin/setup