【发布时间】:2018-04-29 06:10:40
【问题描述】:
我正在使用 Swift 4 开发一个应用程序。我使用 Alamofire 调用 APIRest,我想使用 Objectmapper 映射 JSON 响应。嗯,给我回电话的 JSON 如下:
APIRest 的代码是:
func retrievePostListData() {
Alamofire
.request("http://www.speedrun.com/api/v1/games", method: .get)
.validate()
.responseArray(completionHandler: { (response:
DataResponse<[PostModelSpeedRunModel]>) in
switch response.result {
case .success(let posts):
self.remoteRequestHandler?.onPostsRetrievedData(posts)
case .failure( _):
self.remoteRequestHandler?.onError()
}
})
}
问题是我不知道如何访问每个值(函数映射)。因为有一些嵌套值。除此之外,一些通告是对象,而另一些则是数组。我的错误代码如下:
import Foundation
import ObjectMapper
struct PostModelSpeedRunModel {
var id = ""
var international = ""
var abbreviation = ""
var links = [Links]??? // I need to get "rel" and "uri" of "runs"
var uri = ""
}
extension PostModelSpeedRunModel: Mappable {
init?(map: Map) {
}
mutating func mapping(map: Map) {
id <- map["data.id"]
international <- map["data.international"]
abbreviation <- map["data.abbreviation"]
link <- map["data.Links"]
uri <- map["data.logo"]
}
}
你能帮我做/理解做函数映射吗?谢谢
【问题讨论】:
标签: json swift mapping alamofire objectmapper