Это действительно вопрос вкуса. Лично я предпочитаю использовать родные библиотеки, где могу. Итак, давайте начнем с собственных опций.
1. NSURLConnection
Вы можете использовать его как это:
let url = NSURL(string: "resourceUrl")!
let request = NSURLRequest(URL: url)
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) { (response: NSURLResponse!, data: NSData!, error: NSError!) in
if error == nil {
let results: AnyObject! = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.AllowFragments, error: nil)
if results != nil {
//handle the response here
}
} else {
//handle error
}
}
2. NSURLSession
Введена в iOS7, это вообще лучший подход.
let url = NSURL(string: "resourceUrl")!
let request = NSURLRequest(URL: url)
let urlSession = NSURLSession.sharedSession()
let dataTask = urlSession.dataTaskWithRequest(request, completionHandler: {(data, response, error) in
if (error == nil) {
var error : NSError?
let parsedObject: AnyObject? = NSJSONSerialization.JSONObjectWithData(data,
options: NSJSONReadingOptions.AllowFragments,
error:&error)
//handle the response here
}
}
dataTask.resume()
3. Если вы хотите, чтобы пойти с более сложным подходом, означающим, используя внешнюю библиотеку, вы можете выбрать Alamofire
, которые можно найти here. Вы можете прочитать о своих преимуществах и стандартных стандартах.
4. Если вы имеете дело исключительно с JSON, вы можете пойти с SwiftyJSON, что делает синтаксический разбор JSON очень простым.
Удачи вам!
Спасибо, что было очень полезно – LEADER