由于iOS开发中常常涉及到网络数据交互的问题,同时因为iOS之前的自带框架略坑爹,同时有较好的第三方框架AFNetworking的存在,所以在这次项目的操作中使用AFNetworking进行网络层的数据交互。同时由于网络上大部分的AFNetworking使用教程还是使用2.0版本,所以在此介绍3.0版本的简单使用。
框架名:AFNetworking 3.0
GitHub地址:https://github.com/AFNetworking/AFNetworking
框架作用:网络层数据交互
AFNetworking的使用过程在Github上已经被作者详细的列出来了,这里就粗略的讲解下。
AFNetworking的使用主要分为三步:
1. 创建会话(Session)
2. 创建请求(request)
3. 创建任务(task),对数据进行上传。
同时由于数据上传主要分为POST
和GET
两种方法,所以对于两种不同的请求方式在request创建的时候回有所差别。
一、创建会话(Session)
NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];
AFHTTPSessionManager *manage = [[AFHTTPSessionManager alloc]initWithSessionConfiguration:config];
区别:
defaultSessionConfiguration
: 创建一个能够保存cookie和缓存的session。
ephemeralSessionConfiguration
:创建一个不保存cookie和缓存的session。
backgroundSessionConfigurationWithIdentifier
:创建一个支持http和https并且可以在后台运行的session。
默认情况下只要使用第一个defaultSessionConfiguration即可。
二、创建请求(Request)
请求中一般包含了我们需要传输的数据。所以所有上传的HTTP头文