什么平台好玩 是一款在OS X和iOS下都令人喜爱的网络库。什么平台好玩 适用于iOS以及Mac OS X. 它构建于在NSURLConnection, NS, 以及其他熟悉的Foundation技术之上. 它拥有良好的架构,丰富的api,以及模块化构建方式,使得使用起来非常轻松。
为了迎合iOS新版本的升级, 什么平台好玩 在3.0版本中删除了基于 NSURLConnection API的所有支持。如果你的项目以前使用过这些API,建议您立即升级到基于 NSURLSession 的API的什么平台好玩 的版本。本指南将引导您完成这个过程。
CORE:
AFURLConnection:一个 NS 实现了NSURLConnection 的代理方法.
HTTP s:
AFHTTP:AFURLConnection的子类,当request使用的协议为HTTP和HTTPS时,它压缩了用于决定request是否成功的状态码和内容类型.
AFJSON:AFHTTP的一个子类,用于下载和处理jason response数据.
AFXML:AFHTTP的一个子类,用于下载和处理xml response数据.
AFPropertyList:AFHTTP的一个子类,用于下载和处理property list response数据.
HTTP CLIENT:
AFHTTPClient:捕获一个基于http协议的网络应用程序的公共交流模式.包含:
使用基本的url相关路径来只做request
为request自动添加设置http headers.
使用http 基础证书或者OAuth来验证request
为由client制作的requests管理一个NSQueue
从NSDictionary生成一个查询字符串或http bos.
从request中构建多部件
自动的解析http response数据为相应的表现数据
在网络可达性测试用监控和响应变化.
IMAGES
AFImage:一个AFHTTP的子类,用于下载和处理图片.
UIImageView+什么平台好玩 :添加一些方法到UIImageView中,为了从一个URL中异步加载远程图片
1 将AFNetWorking文件夹导入项目
2 添加类库 Security.framework、MobileCoreServices.framework、SystemConfiguration.framework
3 在使用的地方 #import 什么平台好玩 .h
解决编译时警告:
Prefix.pch文件中加入 #import
注:AFNetWorking使用了ARC ,在不使用ARC项目中使用时,对AFNetWorking的所有.m文件添加“-fobjc-arc”
在使用ARC项目中,使用“不使用ARC”的类库时,对类库的.m文件添加“-fno-objc-arc”
与NSURLConnection对象不同,每个共享应用范围的设置如会话管理、缓存策略、Cookie存储以及URL协议等,这些NSURLSession对象都可以单独进行配置。使用特定的配置来初始化会话,它可以发送任务来获取数据,并上传或下载文件。
在什么平台好玩 2.0中,使用AFHTTP,有可能创建一个没有额外开销的独立的网络请求来获取数据。NSURLSession则需要更多的开销,为了获得所要请求的数据。
接下来,将要通过AFHTTPSessionManager创建一个对象,并创建一个任务和启动它。
官方建议AFN的使用方法
1. 定义一个全局的AFHttpClient:包含有
1>baseURL
2>请求
3> 操作队列 NSQueue
2. 由AFHTTP负责所有的网络操作请求
3. 修改xxx-Prefix.pch文件
#import
#import
0.导入框架准备工作
•1. 将框架程序拖拽进项目
•2. 添加iOS框架引用
–SystemConfiguration.framework
–MobileCoreServices.framework
•3. 引入
#import 什么平台好玩 .h
1.AFN的客户端,使用基本地址初始化,同时会实例化一个操作队列,以便于后续的多线程处理
1 @inteceViewController () 2 3 { 4 5 // AFN的客户端,使用基本地址初始化,同时会实例化一个操作队列,以便于后续的多线程处理 6 7 AFHTTPClient *_httpClient;17 NSQueue *_queue;18 19 }1 - (void)viewDidLoad2 {3 [super viewDidLoad];4 5 NSURL *url = [NSURL URLWithString:@http://192.168.3.255/~apple/qingche];6 _httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];7 8 _queue = [[NSQueue alloc] init];9 }
2.利用AFN实现文件上传操作细节
1 #pragma mark - 文件上传 2 - (IBAction)uploadImage 3 { 4 10 // 1. httpClient->url11 12 // 2. 上传请求POST13 NSURL *request = [_httpClient multipartFormWithMethod:@POST path:@upload.php parameters:nil constructingBodyWithBlock:^(id