Skip to content
This repository was archived by the owner on Mar 18, 2021. It is now read-only.
/ UnboxedAlamofire Public archive

[Deprecated] Alamofire + Unbox: the easiest way to download and decode JSON into swift objects.

License

Notifications You must be signed in to change notification settings

serejahh/UnboxedAlamofire

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a7e981a · Mar 18, 2021

History

45 Commits
Jan 1, 2019
Jan 1, 2019
Jan 1, 2019
Aug 14, 2017
Jan 1, 2019
Jul 31, 2016
Jan 1, 2019
Jan 1, 2019
Jan 1, 2019
Jan 1, 2019
Jan 1, 2019
Jul 31, 2016
Mar 18, 2021
Jan 2, 2019

Repository files navigation

UnboxedAlamofire

⚠️ DEPRECATED

UnboxedAlamofire is deprecated as well as Unbox is deprecated in favor of Swift’s built-in Codable API.


Build Status CocoaPods Compatible Carthage Compatible Platform

Alamofire + Unbox: the easiest way to download and decode JSON into swift objects.

Features

  • Unit tested
  • Fully documented
  • Mapping response to objects
  • Mapping response to array of objects
  • Keypaths
  • Nested keypaths
  • For Swift 2.x use v. 1.x and swift2 branch
  • For Swift 3.x use v. 2.x

Usage

Objects you request have to conform Unboxable protocol.

Get an object

Alamofire.request(url, method: .get).responseObject { (response: DataResponse<Candy>) in
    // handle response
    let candy = response.result.value
    
    // handle error
    if let error = response.result.error as? UnboxedAlamofireError {
        print("error: \(error.description)")
    }
}

Get an array

Alamofire.request(url, method: .get).responseArray { (response: DataResponse<[Candy]>) in
    // handle response
    let candies = response.result.value
    
    // handle error
    if let error = response.result.error as? UnboxedAlamofireError {
        print("error: \(error.description)")
    }
}

KeyPath

Also you can specify a keypath in both requests:

Alamofire.request(url, method: .get).responseObject(keyPath: "response") { (response: DataResponse<Candy>) in
    // handle response
    let candy = response.result.value
    
    // handle error
    if let error = response.result.error as? UnboxedAlamofireError {
        print("error: \(error.description)")
    }
}

Installation

pod 'UnboxedAlamofire', '~> 2.0'
github "serejahh/UnboxedAlamofire" ~> 2.0