从swift解析json响应

时间:2016-04-19 20:23:04

标签: javascript json swift

我有以下代码,最终设法通过api从json获得响应。

 let URL: NSURL = NSURL(string: "http://jsonplaceholder.typicode.com/posts")!
        let request:NSMutableURLRequest = NSMutableURLRequest(URL:URL)
        request.HTTPMethod = "POST"
        let bodyData = "title=foo&body=bar&userId=1"

        request.HTTPBody = bodyData.dataUsingEncoding(NSUTF8StringEncoding);

        NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()){
            (response, data, error) in
            let res = NSString(data: data!, encoding: NSUTF8StringEncoding)
            print(res)
        }

我正在努力学习swift,因为我觉得它有点像javascript我得到这样的回复。

Optional({
  "title": "foo",
  "body": "bar",
  "userId": 1,
  "id": 101
})

通常使用javascript我会通过简单地沿着这些行运行response.body或者其他东西得到一个值但是无法弄清楚如何使用swift解析json响应。

请帮助

由于

1 个答案:

答案 0 :(得分:1)

您需要将JSON响应转换为Swift对象,如下所示:

let res = NSJSONSerialization.JSONObjectWithData(data!, options: .AllowFragments) as! [String:AnyObject]

然后您可以访问like:

中的值
let title = res["title"]