我正在尝试使用 SwiftyJson 来提取一些 JSON 数据。不寻常的是“println(json)”表示“未知”,而如果我以常规方式提取 JSON 数据,它就可以正常工作——“println(pop)”表示“中等”,正如预期的那样。下面是我正在使用的代码。我开始切割零件,直到我到达“println(json)”,然后决定尝试手动处理它,看看它是 SwiftyJson 还是我。有什么建议么?我对 iOS 编程相当陌生,所以我假设我在某种形式上很傻。
var ghostlandsJsonUrl: NSURL = NSURL(string: "http://us.battle.net/api/wow/realm/status?realm=Ghostlands")!
var jsonData: NSData!
var request: NSURLRequest = NSURLRequest(URL: ghostlandsJsonUrl)
let config = NSURLSessionConfiguration.defaultSessionConfiguration()
let session = NSURLSession(configuration: config)
let task : NSURLSessionDataTask = session.dataTaskWithRequest(request, completionHandler: {(data, response, error) in
jsonData = data
if(jsonData != nil) {
let json = JSON(jsonData)
println(json)
} else {
println("jsonData: nil value... net down again?")
}
let jsonObject : AnyObject! = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil)
if let statuses = jsonObject as? NSDictionary{
if let realms = statuses["realms"] as? NSArray{
if let realm = realms[0] as? NSDictionary{
if let pop = realm["population"] as? NSString{
println(pop)
}
}
}
}
});
task.resume()