之前一直遇到关于AFNetWorking请求时间设置了但是不起作用的情况,现用如下方式设置AF的超市时间即可. [manager.requestSerializer willChangeValueForKey:@"timeoutInterval"]; manager.requestSerializer.timeoutInterval = 3.0;//设置请求超时时间 [manager.requestSerializer didChangeValueForKey:@"timeo…
在使用AFNetworking3.0框架,使用Instruments检查Leaks时,检测到1000多个内存泄漏的地方,定位到 [AFHTTPSessionManager manager] 语句中,几乎程序中每个调用该方法的地方都出现了内存泄漏.去stackoverflow上也没找到好的解决办法.无意中在csdn中找到这篇文章:http://blog.csdn.net/wangkexu1986/article/details/51718707 ,其给出的解决办法是将session的实例使用单例模…
前言:有的猿会发现在设置AFNetworking访问网络超时时,直接用self.manager.requestSerializer.timeoutInterval =10.f不起作用. 解决办法:经过查找资料得知,需做以下设置: // 设置超时时间 [manager.requestSerializer willChangeValueForKey:@"timeoutInterval"]; manager.requestSerializer.timeoutInterval = .f; [m…
最近一直很忙也没有什么时间写博客了.放假了休息一下,就写一篇博客来总结一下最近做项目中出现过的问题吧!!! 首先,在项目中我的起到了什么作用,无非就是把美工(UI设计师)给我们的图显示出来,然后再和服务器进行交互. 那个我们和服务器怎么交互呢?最简单的方式就是说话呗,但是我们要跟服务器说话必须通过我们彼此能听的懂的话来交流,也就需要制定很多的协议了(http,tcp,udp等,这个有兴趣的朋友可以了解一下网络协议的东西).但是我平常最常使用的还是http协议. http://www.cnblog…
最近项目中用到了压缩包下载,使用AFNetworking 3.0 下载压缩包 支持断点续传 代码如下: #import "HDInternet_handler.h" #import "AFNetworking.h" #import "ASIHTTPRequest.h" @interface HDInternet_handler ()<NSURLSessionDelegate> @end @implementation HDIntern…
原创:http://www.zhimengzhe.com/IOSkaifa/38653.html AFNetworking 3.0 版本使用 在Xcode7.0之后,苹果废弃了NSURLConnection方法,数据请求使用NSURLSession,作为网络请求类第三方库使用量最大的AFN也及时的更新的新的版本——AFN 3.0版本.新的版本的里废弃了基于NSURLConnection封装的AFHTTPRequestOperationManager,转而使用基于NSURLSession封装的AF…
前言 在 iOS 开发中,一般情况下,简单的向某个 Web 站点简单的页面提交请求并获取服务器的响应,用 Xcode 自带的 NSURLConnection 是能胜任的.但是,在绝大部分下我们所需要访问的 Web 页面则是属于那种受到权限保护的页面,并不是有一个简单的 URL 可以访问的.这就涉及到了 Session 和 Cookie 的处理了,在此时使用 NSURLConnection 也是能够达到要求的,只是其中处理起来的复杂度和难度就提升了.为了更好的处理向 Web 站点的请求,包括处理…
原本我以为是我程序框架有问题...后来才知道, 无知真可怕... __unsafe_unretained __block typeof(self) weakSelf = self; AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json&qu…
前言: 计划把公司的网络请求与业务解耦,所以想着学习一下网络请求,最近学习了NSURLSession,今天来学习一下基于NSURLSession封装的优秀开源框架AFNetWorking 3.x,之前13年做iOS开发时用的ASIHttpRequest开源框架. AFNetWorking AFNetWorking一款轻量级网络请求开源框架,基于iOS和mac os 网络进行扩展的高性能框架,大大降低了iOS开发工程师处理网络请求的难度,让iOS开发变成一件愉快的事情. GitHub地址:http…
下面的类已从AFNetworking 3.0中废弃: AFURLConnectionOperation AFHTTPRequestOperation AFHTTPRequestOperationManager 现在核心代码:AFHTTPSessionManager,<AFNrtworking3.1.0目前使用NSURLSession作为网络类!!!!> #pragma mark - 创建请求者+(AFHTTPSessionManager *)manager{    AFHTTPSessionM…
AFNetworking基本是苹果开发中网络请求库的标配,它是一个轻量级的网络库,专门针对iOS和OS X的网络应用设计,具有模块化的架构和丰富的APIs接口,功能强大并且使用简单,深受苹果应用开发人员的喜爱. 本文主要介绍一下AFNetworking(版本:3.1.0)的模块结构.请求的执行过程.网络状态监测以及网络安全的处理等等,从而对AFNetworking的具体功能.执行过程有一个大致的了解,在实际的项目开发过程中,能够更好的进行应用. 一.结构 下面是AFNetworking的源码结构…
本篇博客是接着上一篇AFNetworking源码解析的后续,如果想对AFNetworking源码有所了解. 请读一下https://www.cnblogs.com/guohai-stronger/p/9191497.html. YTKNetwork的源码详解:https://www.cnblogs.com/guohai-stronger/p/9194519.html 这篇博客主要是对AFNetworking代码进行封装,也是自己在实际项目中所使用过的(对中小型企业或者项目)可直接使用,也会在gi…
AFNetworking 2.5.x 网络请求的封装 源码地址 https://github.com/YouXianMing/Networking 说明 1. 将block形式的请求转换成用代理来处理 2. 你可以通过继承父类,改写父类的某些方法来达到转换请求字典(加密或者其他事宜等),转换获取结果的目的(加密或者其他事宜等) 3. 支持下载进度 常规请求源码 // // Networking.h // NetworkingCraft // // Created by YouXianMing o…
把一张图片 转成二进制流 用AFNetworking POST 上传到服务器. AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:[NSURL URLWithString:BaseUrl]]; manager.responseSerializer = [AFJSONResponseSerializer serializer]; manager.reques…
从苹果系统自带的请求类,到ASIHttpRequest第三方请求类,再到AFNetWorking第三方请求类,目前只要牵扯到数据请求,基本上都是用AFN,所以,这里纯粹是记录下: hRequestTools.h #import <Foundation/Foundation.h> /** * 网络请求类型 */ typedef NS_ENUM(NSUInteger,HttpRequestType) { /** * get请求 */ HttpRequestTypeGet = , /** * pos…
AFNetworking网络请求与图片上传工具(POST) .h文件 #import <Foundation/Foundation.h> /** 成功Block */ typedef void(^SuccessBlockType) (id responsData); /** 失败Block */ typedef void(^FaileBlockType) (NSError *error); @interface NetDataEngine : NSObject //网络请求 + (void)p…
AFNetworking 3.0 的到来使我们开发者又方便了许多,话不多说,直接上代码. 1.首先 引入框架AFNetworking框架 GitHub下载地址:https://github.com/AFNetworking/AFNetworking AFNetworking官网地址:http://afnetworking.com 2.导入AFNetworking 支持框架 #import<MobileCoreServices/MobileCoreServices.h> #import<S…
最近在做APP的时候,遇到了难题:根据公司需求,在用户评论并上传图片的时候,有的手机像素比较高拍的照片高清的,但是每张图片占用的内存太大,或者上传照片的时候,相册的部分照片本身就占很大内存空间,后台数据库内存量有限,如果后期用户达到了几百万,每个用户都评论并上传这么高像素大内存的图片上去,后台数据库怕承受不了,继续拓展后台存储量的话,需要很大成本,那么怎么在前台来处理这些上传的图片而又不失大体呢? 这次总结得是用AFNetworking 向后台传输一张或多张图片,并且将照片压缩,感觉还是AFNe…
iOS AFN内存泄漏处理方法 细心的你是否也发现AFN的内存泄漏的问题了呢. 在这里给大家提供一个解决AFN内存泄漏的方法. 单例解决AFN内存泄漏 + (AFHTTPSessionManager *)sharedHTTPSession{ static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ manager = [AFHTTPSessionManager manager]; manager.requestSerialize…
+ (AFSecurityPolicy*)customSecurityPolicy { // /先导入证书 NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"kudou" ofType:@"cer"];//证书的路径 NSData *certData = [NSData dataWithContentsOfFile:cerPath]; // AFSSLPinningModeCertificate…
http://www.mamicode.com/info-detail-511816.html // 设置超时时间 [manager.requestSerializer willChangeValueForKey:@"timeoutInterval"]; manager.requestSerializer.timeoutInterval = 10.f; [manager.requestSerializer didChangeValueForKey:@"timeoutInter…
dispatch_semaphore_t semaphore = dispatch_semaphore_create(0); //创建信号量 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.requestSerializer.timeoutInterval = 5; manager.completionQueue = dispatch_get_global_queue(DISPATCH_QUEUE_P…
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; manager.responseSerializer = [AFHTTPResponseSerializer serializer]; manager.requestSerializer.timeoutInterval = ; manager.responseSerializer.acceptableContentTypes = [N…
1.网络请求 第一种实现方式: 功能:GET POST 请求 缓存逻辑: 1.是否要刷新本地缓存,不需要就直接发起无缓存的网络请求,否则直接读取本地数据 2.需要刷新本地缓存,先读取本地数据,有就返回,没有就发起缓存的网络请求 3.无网络时直接读取本地缓存 #import "AFHTTPSessionManager.h" /** *该类默认只要导入头文件就会自动检测网络状态,且会在没有网络和未知网络的时候,自动从本地数据库中读取缓存. *数据库网络缓存是基于猿题库公司对FMDB进行封装…
在现在的app,网络请求是一个很重要的部分,app中很多部分都有或多或少的网络请求,所以在一个项目重构时,我会选择网络请求框架作为我重构的起点.在这篇文章中我所提出的架构,并不是所谓的 最好 的网络请求架构,因为我只基于我这个app原有架构进行改善,更多的情况下我是以app为出发点,让这个网络架构能够在原app的环境下给我一个完美的结果,当然如果有更好的改进意见,我会很乐于尝试. 关于网络请求框架 一个好的网络请求框架对于一个团队来说是十分重要的.如果一个网络请求框架没有封装好,或者是在设计上存…
众所周知,苹果有言,从2017年开始,将屏蔽http的资源,强推https楼主正好近日将http转为https,给还没动手的朋友分享一二 1.准备证书 首先找后台要一个证书(SSL证书,一般你跟后台说要弄https,然后让他给你个证书,他就知道了),我们需要的是.cer的证书.但是后台可能给我们的是.crt的证书.我们需要转换一下:打开终端 -> cd到.crt证书路径 -> 输入openssl x509 -in 你的证书.crt -out 你的证书.cer -outform der,证书就准…
1.准备证书 首先找后台要一个证书(SSL证书,一般你跟后台说要弄https,然后让他给你个证书,他就知道了),我们需要的是.cer的证书.但是后台可能给我们的是.crt的证书. 我们需要转换一下: 打开终端 -> cd到.crt证书路径 -> 输入openssl x509 -in 你的证书.crt -out 你的证书.cer -outform der, 证书就准备好了,拖入工程, 记得选copy. 2.新建一个类或者类方法 以下代码借鉴的,自己是放在一个叫FactoryUI的类中 //支持h…
转载自:http://www.cocoachina.com/bbs/read.php?tid-456019.html 一.用URLSession请求 NSString *soapStr = [NSString stringWithFormat:@"<?xml version=\"1.0\" encoding=\"utf-8\"?>\ <soap:Envelope xmlns:xsi=\"http://www.w3.org/200…
前一段时间在做项目的时候发现AFNetworking3.0已经被大众所接受,所以以后肯定会有很多程序猿朋友必须了解和转移至3.0了,这是我这段时间使用和学习总结出来的一些常用的知识点,希望对大家有用. AFNetworking是一款在OS X和iOS下都令人喜爱的网络库.为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持.如果你的项目以前使用过这些API,建议您立即升级到基于 NSURLSession 的API的AFN…
  我一直以为现在都是自动内存管理了,还哪有什么内存泄漏啊.一检测才知道,不是我太相信Xcode了,就是我太单纯了.iOS开发中遇到的内存泄漏主要有几下几种: (1)对象不能释放.使用Core Foundation对象的时候要特别注意,因为他还是MRC,需要自己释放对象. (2)野指针.这儿比较危险,调用一个不属于你的对象,发生什么谁都不知道. (3)空指针.OC这一点很好,如果你往一个空对象发送消息不会报错和崩溃.   检测内存泄漏我一般用两种工具Analyze.Leaks.本文主要介绍我在开…