NSURLConnect 的简单实用(iOS8淘汰)
2016-01-13 20:41
399 查看
Demo_1 NSRULConnection
NSRULConnection
苹果公司在ios8已经抛弃了,但是我还是要讲一下,因为这和后面的NSSession有着密切的联系
下面开始使用步骤:
1. 创建发送的请求
NSRequest 在这个请求中要加入你要访问的URL,其实这就是一种包装,将URL放在请求中
2. 接受放回来得数据
使用connectionWithRequest 方法将返回一个NSData类型的数据
Demo如下
//这里的url是一个网页地址
self.url=[NSURL URLWithString:self.urlTextField.text];
//创建NSURLRequest
NSURLRequest *request=[NSURLRequest requestWithURL:self.url];
//使用NSURLConnection发送同步请求
NSError *error=nil;
NSData*returnData=[NSURLConnection sendSynchronousRequest:request returningResponse:nil error:&error];
//显示到webView上
[self.webView loadData:returnData MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:self.baseURL];
重要的是其中封装信息的思想
self.url=[NSURL URLWithString:self.urlTextField.text];
NSURLRequest *request=[NSURLRequest requestWithURL:self.url];
//发送异步请求
NSOperationQueue *queue=[[NSOperationQueue alloc]init];
[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
//子线程执行
//获取response中的状态码(200/404/500/....)
NSInteger statusCode = [(NSHTTPURLResponse*)response statusCode];//这里格式要做转换
if (statusCode==200) {
//返回成功
NSLog(@"返回成功");
//回到主线程加载到webview 凡是UI的都要放到主线程执行
dispatch_async(dispatch_get_main_queue(), ^{
[self.webView loadData:data MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:self.baseURL];
});
}else{
NSLog(@"失败:%@",connectionError.userInfo);
}
}];
}
思路总结:
1.建立请求
2.发送请求
3.接受放回数据
NSRULConnection
苹果公司在ios8已经抛弃了,但是我还是要讲一下,因为这和后面的NSSession有着密切的联系
下面开始使用步骤:
1. 创建发送的请求
NSRequest 在这个请求中要加入你要访问的URL,其实这就是一种包装,将URL放在请求中
2. 接受放回来得数据
使用connectionWithRequest 方法将返回一个NSData类型的数据
Demo如下
//这里的url是一个网页地址
self.url=[NSURL URLWithString:self.urlTextField.text];
//创建NSURLRequest
NSURLRequest *request=[NSURLRequest requestWithURL:self.url];
//使用NSURLConnection发送同步请求
NSError *error=nil;
NSData*returnData=[NSURLConnection sendSynchronousRequest:request returningResponse:nil error:&error];
//显示到webView上
[self.webView loadData:returnData MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:self.baseURL];
重要的是其中封装信息的思想
self.url=[NSURL URLWithString:self.urlTextField.text];
NSURLRequest *request=[NSURLRequest requestWithURL:self.url];
//发送异步请求
NSOperationQueue *queue=[[NSOperationQueue alloc]init];
[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
//子线程执行
//获取response中的状态码(200/404/500/....)
NSInteger statusCode = [(NSHTTPURLResponse*)response statusCode];//这里格式要做转换
if (statusCode==200) {
//返回成功
NSLog(@"返回成功");
//回到主线程加载到webview 凡是UI的都要放到主线程执行
dispatch_async(dispatch_get_main_queue(), ^{
[self.webView loadData:data MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:self.baseURL];
});
}else{
NSLog(@"失败:%@",connectionError.userInfo);
}
}];
}
思路总结:
1.建立请求
2.发送请求
3.接受放回数据
相关文章推荐
- iOS 自定义navigationBar上得字体属性
- iOS之OC源码,相册循环查看功能的实现
- IOS之OC源码相册循环查看图片功能的实现
- IOS源码之OC相册,可以循环查看图片
- IOS矩阵之后的数学知识
- Runtime Method Swizzling
- iOS中跳转到系统应用的问题
- IOS APN的push证书转换
- Xcode7适配iOS9遇到的一些问题及解决办法
- iOS --NSPredicate
- iOS 4种传值总结
- iOS真机运行,出现process launch failed: Security 错误
- iOS手势以及手势冲突问题
- iOS 导航栏全透明设置
- iOS-修改Status Bar
- ios 视频,音频,开发详解
- iOS 导航条的影响
- iOS 图片加载 圆形进度条
- IOS中延时执行的几种方式的比较和汇总
- iOS小demo之图片变灰