NSURLSession是什么?
NSURLSession是苹果提供的一个专门用于请求http协议方便处理网络请求,实现上传下载.其中提供了许多丰富的api.
URLsession 下有三个子类
NSURLSessionDataTask //网络请求
NSURLSessionUploadTask //上传到服务器请求
NSURLSessionDownloadTask //下载请求
如何使用?(以NSURLSessionDownloadTask 举例)
- 配置一个URLsessionconfig 它可以设置会话的一些配置如常用的请求超时
- 申明一个session对象可以采取
var Urlsession = URLSession.shared //default 带 config的 代理的 以及队列的方式初始化一个会话 - downtask= Urlsession.downtask(urlrequest)来配置一个任务
- 开启任务 downtask.resume()
- 实现代理方法 session didWriteData方法来监听进度
原理:http协议中有个range的东西,可以让其知道下次进来这个实在总字节长度的位置 - 实现代理方法session didFinishDownloadingToURL 将其保存到我们想要保存的路径,因为默认下载好的文件是存在临时缓存中的
需要注意的事:循环引用.
配置后台下载
var *config = [NSURLSessionConfiguration(back:"indennty")
网友评论