iOS 网络编程 (六)NSURLSession

本文详细介绍了NSURLSession在iOS网络编程中的应用,包括其与NSURLConnection的区别、各种配置选项、任务类型,以及如何进行GET、POST请求、文件下载、断点续传和上传操作。特别强调了NSURLSession在后台运行的能力,确保网络任务的连续性。

1 NSURLSession介绍

1 NSURLSession

NSURLSession是iOS7提供的网络接口,与NSURLConnection是并列的,功能比NSURLConnection更加强大。

当应用程序在前台时,NSURLSession与NSURLConnection的大部分功能可以互相替代。

NSURLSession支持后台网络操作,除非用户强行关闭。

NSURLSession提供的功能:

  • 通过URL将数据下载到内存
  • 通过URL将数据下载到文件系统
  • 将数据上传到指定URL
  • 在后台完成上述功能 

对于小型数据,例如用户登录、下载小图像、 JSON & XML 仍然使用 NSURLConnection 的异步或同步方法即可

NSURLSession 的步骤:
1 使用NSURLSessionConfiguration来配置NSURLSession对象
2 用NSURLSession对象来启动一个NSURLSessionTask对象 

提示
可以使用系统全局的sharedSession单例来满足大多数的需求
相比较NSURLConnection的返回处理,NSURLSession提供了灵活的数据返回方式,可以使用简单的block方式来处理返回数据,也可以使用更强大的delegate
URLSession是线程安全的,在多线程方面的支持也比URLConnection要好

2 NSURLSessionConfiguration

作用:用于定义和配置NSURLSession对象
每一个NSURLSession对象都可以设置不同的NSURLSessionConfiguration,从而满足应用内不同类型的网络请求

NSURLSessionConfiguration的三种类型:
  1. defaultSessionConfiguration默认session配置,类似NSURLConnection的标准配置,使用硬盘来存储缓存数据
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值