在 swift 2.3 中解析 Json 时出错

Error while parsing Json in swift 2.3

我正在尝试解析这个 NSDictionary

{"fare":{"value":99.03,"fare_id":"12313545861568689494880005558558852","expires_at":1485864494,"display":"\u20b999.03","currency_code":"INR"},"trip":{"distance_unit":"mile","duration_estimate":720,"distance_estimate":2.76},"pickup_estimate":2}

我的代码是:

 if let statusesArray = try? NSJSONSerialization.JSONObjectWithData(data!, options: []) as? [[String: Any]],
                    let user = statusesArray![0]["fare"] as? [String: Any],
                    let username = user["fare_id"] as? String {
                    // Finally we got the username
                }
                else
                {
                    print("DONE")
                }

但我没有得到价值票价 ID。事实上它从 else 语句打印 "DONE" 。我尝试使用苹果的处理数据的文档,但同样的错误仍然存​​在。

您的 JSON 响应是 Dictionary 而不是 Array,因此将其类型转换为 [String:AnyObject],然后从嵌套的 fare 中获取 fare_id ] 词典.

if let dict = (try? NSJSONSerialization.JSONObjectWithData(data!, options: [])) as? [String: AnyObject],
   let fareDict = dict["fare"] as? [String:AnyObject]
   let username = fareDict["fare_id"] as? String {
      print(username)
}