xcode8.0使用JSONSerialization

把xcode升级到8.0了. 在使用JSONSerialization时,原有的代码很多地方需要修改,修改后可以运行的参考代码:

 let url = "xxxxxxxxxx"   //api接口     
 do{
            //1. 将接口url包装成NSRUL
            //2. 将NSURL的内容读取下载,存放到NSData对象,也就是jsonData
            let jsonData = NSData(contentsOf: NSURL(string: url)  as! URL)

            //使用JSONSerialization将NSData的数据解析成JSON格式 (如果我们的 JSON 根节点是以对象形式存放的,那么我们得到的就是一个 NSDictionary。而如果是以数组形式存放的,那么我们得到的就是一个 NSArray 了。)
            let json = try JSONSerialization.jsonObject(with: jsonData as! Data, options: JSONSerialization.ReadingOptions.mutableLeaves) as? NSDictionary
            
            
            //获取"result"数据,内容是数组形式,里面只有一个数组元素
            let tmp = json?["result"] as? NSArray
            
            //取得数组里的数据,内容是字典形式
            let kk = tmp?[0] as?NSDictionary
            
            //取Au的数据(在字典里的"键"是3)
            let autd = kk?["3"] as?NSDictionary
            
            //获取对应节点数据
            self.variety.text = autd!["variety"] as! String?
            self.time.text = autd!["time"] as! String?
        }  catch {
            NSLog("JSON解析失败")
         }

之前版本的参考文章

你可能感兴趣的:(xcode8.0使用JSONSerialization)