2016 - 1 - 25 第三方网络框架 AFN的简单使用
AFNetworking 底层是对NSURlSession 和对 NSURLConnect 的包装
1.具体使用方法可以参照github上的主页面,在这里只是举一个文件上传的简单列子
- (void)update{ AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; [manager POST:@"http://120.25.226.186:32812/upload" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {// 在这个block中设置需要上传的文件 NSData *data = [NSData dataWithContentsOfFile:@"/Users/mac/Desktop/屏幕快照 2016-01-24 下午3.39.13.png"]; [formData appendPartWithFileData:data name:@"file" fileName:@"test.png" mimeType:@"image/png"]; } success:^(NSURLSessionDataTask *task, id responseObject) { NSLog(@"成功!");
} failure:^(NSURLSessionDataTask *task, NSError *error) { NSLog(@"失败!");
}];
}
2.简单介绍下如何利用afnetworking解析服务器的数据
2.1如果返回的数据格式是XML或者json时 可以按照以下办法:
- (void)update{
AFHTTPSessionManager *mgr = [AFHTTPSessionManager manager]; // 可以改变mgr 解析的服务器返回数据的方式 默认是解析JSON
// 在这里改为按xml格式解析数据
mgr.responseSerializer = [AFXMLParserResponseSerializer serializer]; NSDictionary *parameters = @{
@"username" : @"",
@"pwd" : @"",
@"type" : @"XML"
};
[mgr GET:@"http://120.25.226.186:32812/login2" parameters:parameters success:^(NSURLSessionDataTask *task, id responseObject) {
NSLog(@"sece %@",responseObject);
} failure:^(NSURLSessionDataTask *task, NSError *error) {
NSLog(@"error");
}]; }
2.2 如果是返回的是特殊格式 比如文件下载中返回数据
- (void)update{
AFHTTPSessionManager *mgr = [AFHTTPSessionManager manager]; // 按服务器返回数据类型解析
mgr.responseSerializer = [AFHTTPResponseSerializer serializer]; // [AFXMLParserResponseSerializer serializer] // 服务器返回XML数据的解析器
// [AFJSONResponseSerializer serializer] // 服务器返回JSON的数据解析器 [mgr GET:@"http://120.25.226.186:32812/resources/images/minion_15.png" parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) {
NSLog(@"sece %@",responseObject);
} failure:^(NSURLSessionDataTask *task, NSError *error) {
NSLog(@"error");
}]; }
2016 - 1 - 25 第三方网络框架 AFN的简单使用的更多相关文章
- iOS基础 - 第三方网络框架
一.iOS网络层次结构 基于iOS提供API实现上传文件和断点续传的思路 常用iOS第三方网路框架简介 AFNetworking(AFN) ASIHTTPRequest(ASI) 另外一个常用框架 S ...
- [ 流行的网络框架 ] AFN & ASI
1.AFN & ASI(早已经停止更新,但现在许多公司也在使用.) AFNetWorking地址:https://github.com/AFNetworking/AFNetworking AS ...
- Android网络框架OkHttp之get请求(源码初识)
概括 OkHttp现在很火呀.于是上个星期就一直在学习OkHttp框架,虽然说起来已经有点晚上手了,貌似是2013年就推出了.但是现在它版本更加稳定了呀.这不,说着说着,OkHttp3.3版本在这几天 ...
- IOS-常用第三方开源框架介绍
iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角) 时间:2015-05-06 16:43:34 阅读:533 评论:0 收藏:0 [点我收藏+] ...
- iOS开发-常用第三方开源框架介绍
iOS开发-常用第三方开源框架介绍 图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网 ...
- iOS常用第三方开源框架和优秀开发者博客等
博客收藏iOS开发过程好的开源框架.开源项目.Xcode工具插件.Mac软件.文章等,会不断更新维护,希望对你们有帮助.如果有推荐或者建议,请到此处提交推荐或者联系我. 该文档已提交GitHub,点击 ...
- Android网络框架源码分析一---Volley
转载自 http://www.jianshu.com/p/9e17727f31a1?utm_campaign=maleskine&utm_content=note&utm_medium ...
- Android中android-async-http开源网络框架的简单使用
android-async-http开源网络框架是专门针对Android在Apache的基础上构建的异步且基于回调的http client.所有的请求全在UI线程之外发生,而callback发生在创建 ...
- 结合Retrofit,RxJava,Okhttp,FastJson的网络框架RRO
Retrofit以其灵活的调用形式, 强大的扩展性著称. 随着RxAndroid的推出, Retrofit这样的可插拔式的网络框架因其可以灵活兼容各种数据解析器, 回调形式(主要还是RxJava啦)而 ...
随机推荐
- 第一章 Java的I/O演进之路
I/O基础入门 Java的I/O演进 第一章 Java的I/O演进之路 1.1 I/O基础入门 1.1.1 Linux网络I/O模型简介 根据UNIX网络编程对I/O模型的分类,UNIX提供了5中I/ ...
- Web之路笔记之一
简单说一句,现在开始准备面试前端的知识,每天完成相关的任务,记录一些点. 2014秋季学期Web2.0课程习题 <Lab1 - About Me Page> 目标是自己动手写一个粗略的包含 ...
- zencart産品描述加上錨文本
首先,函數會遍曆整段描述,假如一段描述裏面有Hermes wallets這個關鍵詞,那麽函數就會對這個關鍵詞加上鏈接,至于鏈接到哪裏,上面數組裏面有,隻要把數組裏面的内容替換你想要的就可以. 那麽在z ...
- mybatis高级(2)_数据库中的列和实体类不匹配时的两种解决方法_模糊查询_智能标签
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...
- Android随
Android的UI也是线程不安全的,如果想要更新应用程序里的UI元素,则必须在主线程中进行,否则就会出现异常. Android中的异步消息处理机制主要由四个部分组成,Message,Handle ...
- POJ 1426 Find The Multiple
注:本人英语很渣,题目大意大多来自百度~=0= 这个题有点坑,答案不唯一 题目大意:给你一个数n, 你需要输出的是一个由1和0组成的数,此数能被n整除 解题思路:用s = 1做数的起点, ...
- C——malloc & free(转载自bccn C语言论坛)
原帖及讨论:http://bbs.bccn.net/thread-82212-1-1.html 原文链接:http://www.bccn.net/Article/kfyy/cyy/jszl/20060 ...
- 关于/usr/local/lib/libz.a(zutil.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC解决办法
具体报错截图如下: 解决方法: 题外话,我对makefill cmake也是一窍不通因此本人也是不想去积极的解决这个问题,但是当你求助无缘的时候你才会静心去思考.读到这句话的时候也许你已经发现了问题所 ...
- sed 使用
Sed简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内 ...
- 一生伏首拜阳明------<明朝那些事儿>
一生伏首拜阳明. 王守仁,字伯安,别号阳明. 成化八年(1472),王守仁出生在浙江余姚,大凡成大事者往往出身贫寒,小小年纪就要上山砍柴,下海捞鱼,家里还有几个生病的亲属,每日以泪洗面.这差不多也是惯 ...