JsonParse错误在iPhone设备,但在正确模拟器
这是我的代码:JsonParse错误在iPhone设备,但在正确模拟器
let res = try JSONSerialization.jsonObject(with: data!, options:.mutableContainers) as! [[String:Any]]
的数据是Response.data的结果。
它运作良好的模拟器,但是当在iphone6控制台输出
Could not cast value of type ‘__NSDictionaryM’ to ‘NSArray’
JSON数据格式是这样
[{"":""},{"":""},{"":""}]
的jsondata形式服务器的Android,IOS模拟器效果很好。但是当涉及到我的iPhone设备时,代码失败。 响应json数据的结果就是{},它是空的,但是在Xcode模拟器上它很顺利。
任何人都可以告诉我为什么吗?
试试这个会有帮助:as! Array<Dictionary<String,Any>>
如果您的格式是这样[{"":""},{"":""},{"":""}]
感谢您的帮助!但它在iPhone中无法使用,Xcode模拟器仍然运行良好。在模拟器中,响应数据仅在设备中,而在模拟器中为{{“”:“”},{“”:“”},{“”:“”}],即使浏览器中的GET结果是正确的 –
尝试打印类型为“任何”的响应 –
检查,如果JSON是一个真正的数组。 顺便说一句,不要强制解包数据或jsonObject
试试这个,如果它不是数组:let res = try JSONSerialization.jsonObject(with:data !, options:.mutableContainers)as! [字符串:任意] – KKRocks