首页 文章

Swift从网上下载数据

提问于
浏览
5

我正在观看udemy swift教程,我看到了这两种从web获取数据的方法:

  • 用于获取源代码:
var url = NSURL(string: "SOME_URL");
var task = NSURLSession.sharedSession().dataTaskWithURL(url!,
    completionHandler: {
        (data, response, error) -> Void in
        // some code
    }
)
  • 用于下载图像:
let url = NSURL(string: "SOME_URL")        
let urlRequest = NSURLRequest(URL: url!)

NSURLConnection.sendAsynchronousRequest(urlRequest,
    queue: NSOperationQueue.mainQueue()) {
        (respone, data, error) -> Void in
        // some code
    }

我的问题:

  • 它们之间有什么区别?

  • 我可以使用第一种方法下载图像吗?反之亦然?

1 回答

  • 2

    NSURLSession ->此API提供了一组丰富的委托方法,用于支持身份验证,并使您的应用能够在您的应用未运行时执行后台下载,或者在iOS中,在您的应用暂停时执行 .

    会话的行为由用于创建它的配置对象确定 . 因为有三种类型的配置对象,所以类似地有三种类型的会话:默认会话的行为与NSURLConnection非常相似,短暂会话不会将任何内容缓存到磁盘,下载会话将结果存储在文件中并继续传输数据当您的应用程序被暂停,退出或崩溃时

    NSURLConnection -> NSURLConnection的接口是稀疏的,仅提供启动和取消URL请求的异步加载的控件 . 您可以在URL请求对象本身上执行大部分配置 .

    您可以使用这两种类型下载图像 . 如需更多参考,请访问我指定的链接 .

相关问题