我正在尝试解析Swift 3中的JSON数据。当我尝试打印整个问题时。
这是我的JSON文件的控制台输出:
{
"nameJt1": "01/07/1985",
"codeVideo1": "_NfijT6mt6A",
"nameJt2": "02/07/1985",
"codeVideo1": "XCabcwrxbNc",
"nameJt3": "03/07/1985",
"codeVideo3": "XCabcwrxbNc"
}
这是我解析文件的代码:
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var Jt1Label: UILabel!
@IBOutlet weak var Jt2Label: UILabel!
@IBOutlet weak var Jt3Label: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
//1
let urlAsString = "http://tvlaayoune.ma/youtubeJT"
let url = NSURL(string: urlAsString)!
let urlSession = NSURLSession.sharedSession()
//2
let jsonQuery = urlSession.dataTaskWithURL(url, completionHandler: { data, response, error -> Void in
if (error != nil) {
println(error.localizedDescription)
}
var err: NSError?
// 3
var jsonJt = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as! NSDictionary
if (err != nil) {
println("JSON Error \(err!.localizedDescription)")
}
// 4
let nameJt1: String! = jsonJt["nameJt1"] as! String
let nameJt2: String! = jsonJt["nameJt2"] as! String
let nameJt3: String! = jsonJt["nameJt3"] as! String
let codeVideo: String! = jsonJt["codeVideo"] as! String
dispatch_async(dispatch_get_main_queue(), {
Jt1Label.text = nameJt1
Jt1Labe2.text = nameJt2
Jt1Labe3.text = nameJt3
})
})
// 5
jsonQuery.resume()
}
}
我无法理解问题所在。任何人都可以帮我一把吗?提前谢谢。
这是显示代码的屏幕截图:
答案 0 :(得分:1)
该错误与您的JSON数据结构无关。
如果单击代码列中的红色圆圈,则建议的修补程序将使用URLSession替换NSURLSession。您也可以手动执行此操作。
有很多资源可以帮助你使用Swift和JSON,但是看看这篇文章 - 它涵盖了这两个主题,并包含了从NSURLSession到URLSession的一些内容。