iOS 网络请求 NSURLSession
2016-03-24 16:00
405 查看
对于目前版本的系统的网络请求 网上很多东西都比较乱,现整理NSURLSession 的基本用法。
//1.获取文件访问的路径 接口
NSString *path=@"http://1.studyios.sinaapp.com/getAllClass.php";
//2.封装 URL
NSURL *url=[NSURL URLWithString:path];
//3.创建请求命令
NSURLRequest *request=[NSURLRequest requestWithURL:url];
这是之前的老方法 NSURLConnection
//4.响应的对象
__autoreleasing NSURLResponse *response;
//5.错误信息
__autoreleasing NSError *error;
//*6.通过同步请求的方式 返回 data 对象 方法不能用 要用新方法
NSData *data= [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
//7.json解析
NSArray *arrJson=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error];
NSLog(@"%@",arrJson);
目前版本的NSURLSession 的一些基本用法
//4.创建会话对象 通过单例方法实现的
NSURLSession *session=[NSURLSession sharedSession];
//5.执行会话任务 通过request请求 获取 data对象
NSURLSessionDataTask *task= [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error)
{
//7.json解析
NSArray *arrJson=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error];
NSLog(@"%@",arrJson);
}];
//6.真正的执行任务 resume 继续
[task resume];
//1.获取文件访问的路径 接口
NSString *path=@"http://1.studyios.sinaapp.com/getAllClass.php";
//2.封装 URL
NSURL *url=[NSURL URLWithString:path];
//3.创建请求命令
NSURLRequest *request=[NSURLRequest requestWithURL:url];
这是之前的老方法 NSURLConnection
//4.响应的对象
__autoreleasing NSURLResponse *response;
//5.错误信息
__autoreleasing NSError *error;
//*6.通过同步请求的方式 返回 data 对象 方法不能用 要用新方法
NSData *data= [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
//7.json解析
NSArray *arrJson=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error];
NSLog(@"%@",arrJson);
目前版本的NSURLSession 的一些基本用法
//4.创建会话对象 通过单例方法实现的
NSURLSession *session=[NSURLSession sharedSession];
//5.执行会话任务 通过request请求 获取 data对象
NSURLSessionDataTask *task= [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error)
{
//7.json解析
NSArray *arrJson=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error];
NSLog(@"%@",arrJson);
}];
//6.真正的执行任务 resume 继续
[task resume];
相关文章推荐
- 网络爬虫-pyspider环境搭建(standalone)
- 判断iOS应用是否开放HTTP权限的方法
- 网络访问使用说明
- tcpdump#0入门
- IOS 网络-深入浅出(一 )-> 三方SDWebImage
- apache https配置步骤
- CentOS6.6修改主机名和网络信息
- TCP与UDP的区别
- T-SQL XQuery (XML路径查询) (转)http://blog.csdn.net/Beirut/article/details/8150116
- HTTP接口测试工具-CDSpace
- 转发jsonmodel使用 AF Http报文头--------mark
- 基于volley的获取网络图片
- 关于Android的HTTP请求中文乱码问题(备忘)
- Tomcat Https单向认证
- 强连通分量 间谍网络
- Tomcat的web服务自动跳转到https的设定
- 和安全有关的那些事(非对称加密、数字摘要、数字签名、数字证书、SSL、HTTPS及其他)
- Apache配置文件详解之httpd.conf(1)
- Deep learning with Theano 官方中文教程(翻译)(四)—— 卷积神经网络(CNN)
- iOS 设计中 网络请求之 同步请求(json 请求--新方法和老方法)