AFNetworking(ios网络框架)
v3.0.4 官方版- 软件大小:451.00 KB
- 软件语言:中文
- 软件类型:国产软件 / 源码下载
- 软件授权: 免费软件
- 更新时间:2020-05-12 15:21:29
- 软件等级:
- 软件厂商: -
- 应用平台:WinAll
- 软件官网: 暂无
相关软件
彩虹秒赞最新源码v7.0 正式版
3.03 MB/中文/0.0
绘本奇妙夜v2.9 安卓版
241.00 MB/中文/10.0
php168整站系统v6.01 简体 gbk
5.48 MB/中文/10.0
IT猫扑PHP探针v0.1 免费版
10.00 KB/中文/10.0
动网论坛PHP版v2.0++ Build 080729 官方版
10.44 MB/中文/10.0
软件介绍人气软件精品推荐相关文章网友评论下载地址
AFNetworking源码分析是ios开发中不可缺少的组件,主要用于ios网络框架构建,下面小编有为各位用户提供基础的使用攻略以及总结,还有常规的AFN访问以及AFNetworking实现下载等等资料
使用攻略
为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持。如果你的项目以前使用过这些API,建议您立即升级到基于 NSURLSession 的API的AFNetworking的版本。本指南将引导您完成这个过程。
CORE:
AFURLConnectionOperation:一个 NSOperation 实现了NSURLConnection 的代理方法.
HTTP Requests:
AFHTTPRequestOperation:AFURLConnectionOperation的子类,当request使用的协议为HTTP和HTTPS时,它压缩了用于决定request是否成功的状态码和内容类型.
AFJSONRequestOperation:AFHTTPRequestOperation的一个子类,用于下载和处理jason response数据.
AFXMLRequestOperation:AFHTTPRequestOperation的一个子类,用于下载和处理xml response数据.
AFPropertyListRequestOperation:AFHTTPRequestOperation的一个子类,用于下载和处理property list response数据.
HTTP CLIENT:
AFHTTPClient:捕获一个基于http协议的网络应用程序的公共交流模式.包含:
使用基本的url相关路径来只做request
为request自动添加设置http headers.
使用http 基础证书或者OAuth来验证request
为由client制作的requests管理一个NSOperationQueue
从NSDictionary生成一个查询字符串或http bodies.
从request中构建多部件
自动的解析http response数据为相应的表现数据
在网络可达性测试用监控和响应变化.
IMAGES
AFImageRequestOperation:一个AFHTTPRequestOperation的子类,用于下载和处理图片.
UIImageView+AFNetworking:添加一些方法到UIImageView中,为了从一个URL中异步加载远程图片
AFNetworking使用总结
1 将AFNetWorking文件夹导入项目
2 添加类库 Security.framework、MobileCoreServices.framework、SystemConfiguration.framework
3 在使用的地方 #import "AFNetworking.h"
解决编译时警告:
Prefix.pch文件中加入 #import
#import 注:AFNetWorking使用了ARC ,在不使用ARC项目中使用时,对AFNetWorking的所有.m文件添加“-fobjc-arc”
在使用ARC项目中,使用“不使用ARC”的类库时,对类库的.m文件添加“-fno-objc-arc”
要使用常规的AFN网络訪问
1. AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
全部的网络请求,均有manager发起
2. 须要注意的是,(client)默认提交请求的数据是二进制的,(server)返回格式是JSON
1> 假设提交数据是JSON的,须要将请求格式设置为AFJSONRequestSerializer
2> 假设返回格式不是JSON的,
3. 请求格式
AFHTTPRequestSerializer 二进制格式
AFJSONRequestSerializer JSON
AFPropertyListRequestSerializer PList(是一种特殊的XML,解析起来相对easy)
4. 返回格式 (响应格式)
AFHTTPResponseSerializer 二进制格式
AFJSONResponseSerializer JSON
AFXMLParserResponseSerializer XML,仅仅能返回XMLParser,还须要自己通过代理方法解析
AFXMLDocumentResponseSerializer (Mac OS X)
AFPropertyListResponseSerializer PList
AFImageResponseSerializer Image
AFCompoundResponseSerializer 组合
假设服务端的响应体的格式是application/json那么AFNetworking能够直接进行解析, 假设不是。要对AFNetworking的响应序列进行设置:
manager.responseSerializer = [AFHTTPResponseSerializer serializer]; 这句代码将一个新的解析对象AFHTTPResponseSerializer赋值过去。数据不会再被AFNetworking自己主动解析
取消任务
[manager.operationQueue cancelAllOperations];
*/
AFNetworking实现文件下载
#import "ViewController.h"
#import "AFNetworking/AFNetworking.h"
@interface ViewController ()
@end
@implementation ViewController
-(void)touchesBegan:(NSSet
*)touches withEvent:(UIEvent *)event {
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3782685451,3066622536&fm=27&gp=0.jpg"]];
NSURLSessionDownloadTask *downTask = [manager downloadTaskWithRequest:request progress:^(NSProgress * _Nonnull downloadProgress) {
//打印下载进度
NSLog(@"%f",1.0 * downloadProgress.completedUnitCount/downloadProgress.totalUnitCount);
} destination:^NSURL * _Nonnull(NSURL * _Nonnull targetPath, NSURLResponse * _Nonnull response) {
NSString *filePath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
NSString *fullPath = [filePath stringByAppendingPathComponent:response.suggestedFilename];
NSLog(@"%@",fullPath);
return [NSURL fileURLWithPath:fullPath];
} completionHandler:^(NSURLResponse * _Nonnull response, NSURL * _Nullable filePath, NSError * _Nullable error) {
NSLog(@"%@",filePath);
NSLog(@"completionHandler----%@",error);
}];
[downTask resume];
}
@end
更多>> 软件截图
推荐应用
SupeSite内容管理系统 1.97 MB
下载/中文/10.0 v7.5 简体中文GBKphp smarty模板 91.00 KB
下载/中文/3.0 v2.6.18 免费版新云网站内容管理系统 4.25 MB
下载/中文/10.0 v3.1.0.1231 正式版Discuz! X2.5 正式版 17.06 MB
下载/中文/10.0 简体中文GBK+UTF8版Discuz! v7.0.0 简体GBK 独立安装包 3.70 MB
下载/中文/10.0 vbuild 20081224 官方正式版Discuz!NT v2.6.1 For Access 15.20 MB
下载/中文/10.0ThinkPHP 3.78 MB
下载/中文/10.0 v5.0.10 官方完整版动网论坛Dvbbs 5.33 MB
下载/中文/3.0 v8.3 官方版
其他版本下载
精品推荐 免费开源软件
- 更多 (79个) >> 免费开源软件 免费开源软件就是类似小巧无捆绑免费开源跨平台的免费软件,实用免费且不需要花费更多的经历和钱财去破解或者付费,在这里给大家整理出了很多不同类型行业所需求的开源软件,软件既然连源代码都公开,因此开源软件具备可以免费使用和公布源代码的主要特征,开源软件不一定是免费软件,它公开源码,可以
layer ui 509.00 KB
/中文/10.0UML建模软件(ArgoUML) 15.74 MB
/多国语言[中文]/0.0IntelliJ IDEA 2019中文版 575.00 MB
/中文/10.0Java Decompiler(JD-GUI反编译工具) 5.00 MB
/中文/0.0Pycharm 2019最新官方版 393.00 MB
/中文/1.0rstudio(R语言) 85.70 MB
/中文/0.0Inkscape矢量绘图软件 90.90 MB
/多国语言[中文]/5.0mendeley desktop 32位/64位(文献管理软件) 21.00 MB
/中文/10.0
相关文章
下载地址
AFNetworking(ios网络框架) v3.0.4 官方版
查看所有评论>> 网友评论
更多>> 猜你喜欢