我试图使用Swift对REST API进行GET调用,并试图遵循许多教程,但不能弄清楚。或者是因为我不知道如何将所有的Obj-C翻译成Swift,或者因为一半的方法n’都被弃用。有谁知道如何进行调用,并解析返回的JSON数据?
你可以这样做:
var url : String = "http://google.com?test=toto&test2=titi"
var request : NSMutableuRLRequest = NSMutableuRLRequest()
request.URL = NSURL(string: url)
request.HTTPMethod = "GET"
NSURLConnection.sendAsynchronousRequest(request,queue: NSOperationQueue(),completionHandler:{ (response:NSURLResponse!,data: NSData!,error: NSError!) -> Void in
var error: AutoreleasingUnsafeMutablePointer<NSError?> = nil
let jsonResult: NSDictionary! = NSJSONSerialization.JSONObjectWithData(data,options:NSJSONReadingOptions.MutableContainers,error: error) as? NSDictionary
if (jsonResult != nil) {
// process jsonResult
} else {
// Couldn't load JSON,look at error
}
})
编辑:对于人有问题,这可能是你的JSON流是一个数组[],而不是一个对象{}所以你必须改变jsonResult NSArray,而不是NSDictionary