HTTPTask响应转换为用于JSON序列化的Swifty

HTTPTask响应转换为用于JSON序列化的Swifty,json,xcode,swift,Json,Xcode,Swift,我正在使用HTTPTask从openweathermap.org加载数据。这很好用。我无法将数据转换为JSON。我想使用SwiftyJSON,但我不太明白如何在两者之间架起桥梁 HTTPTask有一个JSON序列化程序,我已经开始工作了,但我更喜欢使用Swifty,它似乎更容易使用 这是我到目前为止所拥有的。这将从openweathermap.org加载天气。我不知道如何将响应传递给Swifty var request = HTTPTask() request.requestSerializer

我正在使用HTTPTask从openweathermap.org加载数据。这很好用。我无法将数据转换为JSON。我想使用SwiftyJSON,但我不太明白如何在两者之间架起桥梁

HTTPTask有一个JSON序列化程序,我已经开始工作了,但我更喜欢使用Swifty,它似乎更容易使用

这是我到目前为止所拥有的。这将从openweathermap.org加载天气。我不知道如何将响应传递给Swifty

var request = HTTPTask()
request.requestSerializer = JSONRequestSerializer()
request.responseSerializer = JSONResponseSerializer()

request.GET(openWeatherURL, parameters: ["q":"San Francisco", "APPID":openWeatherAPIKey], success: {(response: HTTPResponse) in
    if let dict = response.responseObject as? Dictionary<String, AnyObject> {
        println("Response: \(response)")
        println("Dictionary: \(dict)")
        let description = dict["weather"]["description"]
        println(description)
                }
}, failure: {(error: NSError, repsonse: HTTPResponse?) in
    println("error \(error)")
})
var请求=HTTPTask()
request.requestSerializer=JSONRequestSerializer()
request.responseSerializer=JSONResponseSerializer()
GET(openWeatherURL,参数:[“q”:“sanfrancisco”,“APPID”:openWeatherAPIKey],成功:{(响应:HTTPResponse)in
如果让dict=response.responseObject作为字典{
println(“响应:\(响应)”)
println(“字典:\(dict)”)
让描述=口述[“天气”][“描述”]
println(说明)
}
},失败:{(错误:NSError,repsonse:HTTPResponse?)在
println(“错误\(错误)”)
})

SwiftyJSON非常乐意接受各种对象,包括Dictionary?,所以就这么做吧

let dict = JSON(response.responseObject)

我还没有使用过HTTPTask,但似乎您可以编写自己的请求序列化程序,用SwiftyJSON实现.GET等。也就是说,你有两个想法:1)问问自己为什么要这样做;你已经有了一本本地的swift字典,而且几乎不费吹灰之力。2) 如果您不喜欢使用Dictionary,SwiftyJSON会很高兴地将其按原样包装:
JSON(dict)
。感谢您的回复,我想这正是我想要的答案。我没有意识到我可以将字典传递给Swifty JSON()。哦,如果是这样的话,我将继续提交它作为正确的答案,以便您可以标记它,以防它可能会帮助其他人。:)我没有意识到这一点。工作起来很有魅力!