[英]How to parse JSON returned from a webservice in swift
Hey i am new to swift and I need to parse this JSON and get the value of "name" returned from a webservice: 嘿,我是Swift的新手,我需要解析此JSON并获取从Web服务返回的“名称”的值:
{name = "Sameer Hussain";}
Here is my code so far: 到目前为止,这是我的代码:
var url: NSURL = NSURL(string: "http://xxxxxxxxx.com/xxxxx/xxxx.php")!
var request:NSMutableURLRequest = NSMutableURLRequest(URL:url)
var bodyData = "data=something"
request.HTTPMethod = "POST"
//request.HTTPBody = bodyData.dataUsingEncoding(NSUTF8StringEncoding);
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue())
{
(response, data, error) in
// println(data)
var strData = NSString(data: data, encoding: NSUTF8StringEncoding)
//println(strData)
var err1: NSError?
var json2 = NSJSONSerialization.JSONObjectWithData(strData!.dataUsingEncoding(NSUTF8StringEncoding)!, options: .MutableLeaves, error:&err1 ) as! NSDictionary!
println("\(json2)")
}
From the code above it seems like your data is being saved within the json2 variable. 从上面的代码看来,您的数据似乎保存在json2变量中。 To retrieve a value from that variable you can try something like this.
要从该变量中检索值,您可以尝试类似的方法。
var userName: String?
var userAge: Int?
var userEmail: String?
if let parseJSON = json2
{
userName = parseJSON["name"] as? String
userAge = parseJSON["age"] as? Int
userEmail = parseJSON["email"] as? String
}
The above would work if your returned JSON looks something like this: 如果您返回的JSON如下所示,则上述方法将起作用:
{
"name": "John"
"age": "21"
"email": "john@gmail.com"
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.