IOS 网络浅析-(九 NSURLSession代理简介)
2016-03-21 19:59
369 查看
从最开始什么都不懂的小白,到到现在略知一二的小孩。我觉得不仅仅是我,大家应该都会注意到代理几乎贯穿着IOS,那么问题来了,我接下来要说什么呢,那就是。标题的内容啦。上篇网络系列的文章我介绍了NSURLSession,趁热打铁,这篇就介绍一下NSURLSession代理的实现。
NSURLSession这块其实并不难,但是有人会说有点乱,大家不要担心,不容易实现的api总会有大牛实现三方的,稍后我会为大家献上“微不足道”的三方。
*关于NSURLSession我想再写一篇到两篇,虽然实际开发中有可能用不到,但是原生的我们还是知道比较好,过于依赖三方,大神也会成为小白*
言归正转,代码中现本事:
NSURLSession这块其实并不难,但是有人会说有点乱,大家不要担心,不容易实现的api总会有大牛实现三方的,稍后我会为大家献上“微不足道”的三方。
*关于NSURLSession我想再写一篇到两篇,虽然实际开发中有可能用不到,但是原生的我们还是知道比较好,过于依赖三方,大神也会成为小白*
言归正转,代码中现本事:
// // ViewController.m // CX-NSURLSession代理简介 // // Created by ma c on 16/3/21. // Copyright © 2016年 xubaoaichiyu. All rights reserved. // #import "ViewController.h" @interface ViewController ()<NSURLSessionDataDelegate> @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; } //这是为了测试而建立的点击屏幕事件。 -(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ //代理 测试 NSURL * url = [NSURL URLWithString:@"http://localhost/login.php?username=haha&password=123"]; //创建自定义Session NSURLSession * session = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration] delegate:self delegateQueue:[[NSOperationQueue alloc]init]]; NSURLSessionTask * task = [session dataTaskWithURL:url]; //开启任务 [task resume]; } #pragma mark - deleDate //接受到服务器响应 -(void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveResponse:(NSURLResponse *)response completionHandler:(void (^)(NSURLSessionResponseDisposition))completionHandler { //__FUNCTION__ c语言字符串用s NSLog(@"%s",__FUNCTION__); //允许服务器回传数据 completionHandler(NSURLSessionResponseAllow); } //接受服务器回传的数据可能执行多次 -(void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data{ NSLog(@"%@",[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]); } //请求成功或者失败 -(void)URLSession:(NSURLSession *)session didBecomeInvalidWithError:(NSError *)error{ NSLog(@"%@",error); } @end
相关文章推荐
- thttpd 2.25b源码分析
- thttpd+cgilua
- iOS中使用 Reachability 检测网络
- thttpd源码分析
- Nyoj 网络的可靠性(水题)
- IOS 网络浅析-(八 NSURLSession简介)
- thttpd服务器移植到ARM Linux教程
- Http协议与TCP协议简单理解
- Android Volley完全解析(二),使用Volley加载网络图片
- 使用 HttpClient 和 HtmlParser 实现简易爬虫
- socks5 proxy for http proxy
- iOS网络开发 - 浏览器
- Codeforces 653D Delivery Bears【二分+网络流】
- Codeforces 653D Delivery Bears【二分+网络流】
- composer遇到Your configuration does not allow connection to http://的问题怎么解决
- 借助script发送http请求:jsonp
- 听大神说:https和http有何区别?(转)
- http和socket之长连接和短连接区别
- muduo网络库脉络分析(2)
- 三大WEB服务器对比分析(apache ,lighttpd,nginx)