【发布时间】:2015-10-25 23:49:04
【问题描述】:
我有一个简单的问题:如何使用 Hearst-DD/ObjectMapper 将这样的 json 响应转换为对象
{
"errors": [
{
"code": "404",
"message": "Wrong id"
}
]
}
我会使用 swiftyJson
json["errors"][0]["code"]
但是如何使用 objectmapper 呢?我试过这个:
map["errors.code"]
它不起作用
编辑:我按照建议做了 Error 和 ErrorResponse 类,现在:
//...
let fullAddress = mainAddress + additionalAddr
var parameters = ["email":email]
manager.GET( fullAddress,
parameters: parameters,
success: { (operation: AFHTTPRequestOperation!,responseObject: AnyObject!) in
//here is success, i got it done with user mapping
callback(success: true)
},
failure: { (operation: AFHTTPRequestOperation!,error: NSError!) in
let errorResponse = Mapper<ErrorResponse>().map(operation.responseString!)
println(errorResponse!) //this prints: MyApp.ErrorResponse
println(errorResponse?.errors!) //this prints: Optional([MyApp.Error])
println(errorResponse?.errors![0]) //this prints:Optional(MyApp.Error)
println(errorResponse?.errors![0].code) //<- this is nil :(
// how to get the code mapped ?
callback(success: false)
})
}
【问题讨论】:
-
它给出的表达类型是友好的,没有更多的上下文。
标签: ios arrays json swift dictionary