是不是用惯了AFNetWorking你就忘记了底层的网络请求了呢?自从iOS7的之后NSURLConnection已经被苹果踢了,用NSURLSession进行代替,来进行网络请求,本篇文章主要讲述使用NSURLSession进行GET和POST请求以及进行文件上传,下载和断点下载以及后台下载决定放到下一篇文章单独讲,我的邮箱是KenenCS@163.com,欢迎多多交流!
–此demo的地址在GitHub的 NSURLSessionTestDemo
废话不多说,直接上代码,带你一起回顾网络请求:
#pragma mark–你要声明一个NSURLSessionDataDelegate这个代理,这个代理是GET和POST请求要用它的一些代理方法.

#pragma mark–请求URL的方法,因为后面是分为数据请求和文件上传的,所以写到一个大方法里面.

#pragma mark–请求URL的方法,GET请求的代码和POST请求的代码都有,注意GET请求用的是NSURLSession,POST请求用的是NSMutableURLSession.我这方法里面写了两个小方法,一个是GET和POST请求,一个是文件上传,分开写是为了便于大家后面的观看.



#pragma mark–这个是GET和POST的数据请求,注意使用的是NSURLSessionDataTask,它就是数据请求的任务创建.另外不要忘了执行任务的代码,要不然是不会执行的哦!

#pragma mark–这是数据请求的代理方法,有接收到服务器响应数据时调用的方法,接收到服务器响应的时候你也要给它一个回应,告诉他该怎么做….有接收到服务器返回数据调用的方法,有时候数据过大的话该方法会调用多次.

#pragma mark–这是上传文件的方法,记得是使用NSURLSessionUploadTask创建任务的,这里面有两种创建方式,一种是有参数的,一种是无参数的,现在为了安全起见一般用的都是有参数的上传方法,另外不要忘记执行任务哦!.

#pragma mark–这是一个代理方法,这个代理方法只要是请求的,不管是数据请求或是文件上传还是下载,当完成任务时这个方法都会被调用.

以上就是详细代码,demo的地址在GitHub的 NSURLSessionTestDemo,欢迎下载交流!