控制器返回,取消之前的请求
接上篇
之所以用静态变量封装AFN,是为了可以获取到当前正在执行的请求,然后取消。
代码如下:
AFNetworkingTool继承自AFURLSessionManager,用静态变量保存。
在基类中重写系统方法dealloc,因为AFNetworkingTool静态存储,所以可以在这个方法里获取到它,然后获取当前正在执行的任务,如果任务正在执行或者被挂起,那么取消执行,这个时候请求会走失败回调,避免无谓的流量浪费。
测试的打印结果:
参考文章:https://www.jianshu.com/p/96272c18150e
下一篇想说一下,为什么不用单例封装AFN。