使用NSURLSessionDelegate的Swift NSURLSession

时间:2014-10-12 22:29:52

标签: ios swift delegates nsurlsession

我是Swift和iOS的新手,希望编写一些基本的Swift代码来创建一个带定义委托的NSURLSession。

我在下面

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    let url = NSURL(string: "https://url.com")

    let config = NSURLSessionConfiguration.defaultSessionConfiguration()

    let session = NSURLSession(configuration:config, delegate: XXX, delegateQueue:nil)

    let task = session.dataTaskWithURL(url, completionHandler:myTaskCompletionHandler)
    task.resume()
}

func myTaskCompletionHandler(data:NSData!, response:NSURLResponse!, error:NSError!) {        
    println(NSString(data: data, encoding: NSUTF8StringEncoding))
}

如何使用委托方法/对象名称替换上面的XXX以及方法签名是什么。

我能够为dataTaskWithURL completionHandler委托完成此任务,但我很难将其用于会话级委托。

我知道有Objective-c样本,但我无法将objective-c语法翻译成工作的swift代码。

1 个答案:

答案 0 :(得分:0)

我在这个GitHub存储库中找到了答案,这是一个完整的端到端实现。 https://github.com/Alamofire/Alamofire/blob/master/Source/Alamofire.swift