iOS 使用NSURLConnection简单代码实现网络访问
来源:互联网 发布:ubuntu vi 强制保存 编辑:程序博客网 时间:2024/06/06 21:22
代码示例:
sendSynchronousRequest访问:
NSURL *url = [NSURL URLWithString:@"http://xxxooo"]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
>url:访问网络地址
>request 要装载的URL请求. 这个request 对象 作为初始化进程的一部分,被深度复制(deep-copied). 在这个方法返回之后, 再修改request, 将不会影响用在装载的过程中的request
>reponse 输出参数, 由服务器返回的URL响应
>输出参数, 如果在处理请求的过程中发生错误,就会使用. 无错误,就为NULL
此处用的是sendSynchronousRequest来访问的,此方法在主线程,网络缓慢会让UI卡死, 所以此方法不推荐,访问网络一定要在子线程中处理
// 发送一个同步请求(在主线程发送请求) // queue :存放completionHandler这个任务 NSOperationQueue *queue = [NSOperationQueue mainQueue]; [NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler: ^(NSURLResponse *response, NSData *data, NSError *connectionError) { // 这个block会在请求完毕的时候自动调用 if (connectionError || data == nil) { //请求失败 return; } // 解析服务器返回的JSON数据 NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil]; NSString *error = dict[@"error"]; if (error) { //失败 } else { //成功 } }];
异步请求服务器返回结果会自动调用block内的代码,如果block的代码涉及到UI的刷新等,必须传入的队列queue为主队列,不然无法执行
服务器返回的数据为NSData类型,输出为很多16进制的值,所以必须进行解析才可获取内部数据
使用NSJSONSerialization进行解析,会返回NSDictionary类型的数据
0 0
- iOS 使用NSURLConnection简单代码实现网络访问
- IOS--简单的网络NSURLConnection的使用
- IOS网络开发之如何使用NSURLConnection
- IOS网络学习-6、NSURLConnection基本使用
- iOS网络开发之NSURLConnection的使用
- iOS 网络编程 (三)NSURLConnection使用
- ios 实现简单的断点续传下载 nsurlconnection
- 使用NSURLConnection实现简单的单点下载
- IOS使用NSURLConnection实现文件上传
- iOS开发 使用NSURLConnection实现图片上传
- iOS开发 使用NSURLConnection实现下载文件
- iOS开发 使用NSURLConnection实现断点续传下载
- iOS 网络之NSURLConnection
- iOS网络请求NSURLConnection
- iOS网络请求-NSURLConnection
- iOS网络编程--NSURLConnection
- iOS: NSURLConnection代码实例
- 网络:NSURLConnection 使用 HTTPS
- MTK android flash 配置
- virtualenv创建独立的Python环境
- codeforces 551E GukiZ and GukiZiana 分块
- google开源web安全扫描工具skipfish简介
- C#获取USB盘符
- iOS 使用NSURLConnection简单代码实现网络访问
- VS2013多线程程序卡住以及各种异常的调试
- Centos上安装samba配置后,windows登陆root没有写权限
- 二、jQuery选择器
- socket阻塞与非阻塞,同步与异步、I/O模型
- linux命令11--联机帮助
- OSG回调机制
- 我的Java开发学习之旅------>在Dos环境下Java内部类的编译和运行
- 最大乘积