1

所以我正在尝试使用 Swifty-JSON 来处理 JSON 文件。我遇到的问题是 JSON 文件(来自 twitter API)以数组开头,示例如下:

[
    {
        "created_at": "Tue Mar 31 13:47:02 +0000 2015",
        "id": 582901921171796000,
    }
]

假设我想阅读该created_at部分,我会执行以下操作:

let urlPath = "http://api.twitter.com/1.1/statuses/home_timeline.json?AUTHENTICATION_INFO"
let url: NSURL = NSURL(string: urlPath)!
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithURL(url, completionHandler: {data, response, error -> Void in

        if error != nil {
            // If there is an error in the web request, print it to the console
            println(error.localizedDescription)
        }

        var err: NSError?
        var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSDictionary
        if err != nil {
            // If there is an error parsing JSON, print it to the console
            println("JSON Error \(err!.localizedDescription)")
        }

        let json = JSON(jsonResult)

        let createdAt = json[0]["created_at"].string!
        println(createdAt)

    })
    task.resume()

但这不起作用,我退休了一条错误消息,突出显示我的代码并在控制台(lldb)中打印出来。

有谁知道如何在 Swifty-JSON 中做到这一点,它可能很简单,但我很不确定。

谢谢

4

1 回答 1

2

在 NSJSONSerialization 中将响应转换为 NSArray:

var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSArray
于 2015-03-31T15:34:51.797 回答