使用SwiftyJSON处理JSON响应

时间:2014-09-29 17:39:15

标签: ios json swift alamofire

我花了很长时间用SwiftyJSON处理JSON响应,但我不知道如何解析响应。这是我的代码:

    var jsonString:String = ""

    Alamofire
        .request(.GET, url + "/HMServer/rest/administration/version")
        .responseJSON {
            (request, response, data, error) -> Void in

            let json = JSON(object: data!)

            //here I want to do something with parsing
    }

我对Alamofire的请求并获得JSON响应。响应如下:

[message: [SERVER_VERSION: 0.1, INTERFACE_VERSION: 0.1], type: success]

我想将所有元素保存在字符串中并将其返回。如何解析let let json中保存的JSON响应?我尝试使用Alamofire-SwiftJSON但代码不起作用。我发现的所有示例都太旧了,因为几天前SwiftyJSON代码被重构了。

THX!

1 个答案:

答案 0 :(得分:0)

我已修复Alamofire-SwiftJSON的问题, 但你可以自己在responseJSON的闭包中做到这一点,如:

Alamofire.request(.GET, url + "/HMServer/rest/administration/version")
         .responseJSON { (request, response, data, error) -> Void in
            if error != nil {
                self.swiftyJSON = SwiftyJSON.JSON.Null(error)
            } else if object != nil {
                self.swiftyJSON = SwiftyJSON.JSON(object: object!)
            } else {
                self.swiftyJSON = SwiftyJSON.JSON.Null(nil)
            }
}

上面的代码与全局队列中的Alamofire-SwiftJSON不同,初始化(AnyObject to SwiftyJSON)正在主队列中运行。