Swift3 Swift 3如何将Alamofire中的json解析为模型
我无法将Alamofire查询中的json响应解析到模型中。我有这个模型代码。我做错了什么?我在Xcode 8.3中使用Swift 3Swift3 Swift 3如何将Alamofire中的json解析为模型,swift3,alamofire,Swift3,Alamofire,我无法将Alamofire查询中的json响应解析到模型中。我有这个模型代码。我做错了什么?我在Xcode 8.3中使用Swift 3 enum SerializationError: Error { case missing(String) case invalid(String, Any) } struct Thing { var id: String var name: String } extension Th
enum SerializationError: Error {
case missing(String)
case invalid(String, Any)
}
struct Thing {
var id: String
var name: String
}
extension Thing {
init(json: [String: Any]) throws {
guard let id = json["id"] as? String else {
throw SerializationError.missing("id")
}
guard let name = json["name"] as? String else {
throw SerializationError.missing("name")
}
self.id = id
self.name = name
}
}
那么在我的控制器里我有
func parseData(jsonData: [String: Any]) {
var model = [Thing]()
let things = jsonData["things"] as! [[String: Any]]
for thing in things {
do {
let aThing = try Thing(json: thing)
model.append(aThing)
} catch let error {
print(error.localizedDescription)
}
}
}
我总是出错。我知道这个错误与json响应无关,因为我已经仔细检查了它,并且在那里有额外的代码来测试元素是否存在
The operation couldn’t be completed. (MyApp.SerializationError error 0.)
我使用您的代码进行了测试,运行良好。您能分享一下您的json响应是什么吗?我需要混淆我的代码,正如您可以从我的问题中看到的那样。
model.count
的结果是0哪一行给出了错误?let aThing=try Thing(json:Thing)
我认为您的json格式错误,请再次检查。