【发布时间】:2019-11-14 10:23:14
【问题描述】:
我正在尝试弄清楚如何快速处理复杂的多级 JSON 数据。我能够在第一级获取数据。但是我无法通过 JSON 中的嵌套数组检索/循环。到目前为止,我有这个。
let requestParams = ["appVersion" : "1.0.1" , "installId" : installId , "appToken" : firebaseToken,
"phoneDimensions" : dimentions, "phoneOS" : "1", "os_version" : systemVersion ]
AF.request(startAppUrl, method: .post, parameters: requestParams , encoding: JSONEncoding.default).responseString{
response in
switch response.result {
case .success(let data):
let dataStr = data.data(using: .utf8)!
do{
let json = try? JSONSerialization.jsonObject(with: dataStr , options: .allowFragments) as! [String: Any]
let rows = json!["ottHomeRows"] as! [[String:Any]] //Nested Array
for item in rows{
print(item)
}
}
catch let error as NSError{
print("There is an error \(error)")
}
case .failure(let error):
print((error.localizedDescription))
}
}
我已经尝试了几种变体,但我总是在将嵌套数组从 Any 类型转换为数组时遇到问题。在上面的代码中,我得到错误无法将 __NSCString 类型的值转换为 NSArray。 我的 json 数据样本在这里https://startv.co.tz/startvott/engine/jsonsample/
【问题讨论】:
标签: json swift xcode multidimensional-array alamofire