URLSession

URLSession时ios7中的心得网络接口,与NSURLConnection是并列的。

当程序在前台时,URLSession与NSURLConnection大部分可以互相替代。

URLSession支持后台网络操作。除非用户强制关闭。

URLSession提供的功能:

  1.通过url将数据下载到内存。

  2.通过url将数据下载到文件系统

  3.将数据上传到url

  4.在后台完成上述功能

对于小型数据,例如用户登录、下载小图像、json&xml仍然使用NSURLConnection的异步或同步方法即可。

工作机制:

url ---> URLRequest ---> URLConnection(简单的网络访问数据)

url ---> URLRequest ---> URLSession(它是由URLSesionConfigration进行管理的我们在用URLSession的时候应该先初始化这个对象,创建它的对象,要知道所有的任务都是由Session发起的,所有任务默认都是挂起的,需要Resume) ---> 负责下载/断点续传/后台下载;上传/后台上传;下载/上传进度跟进。

时间: 2024-10-11 05:27:11

URLSession的相关文章

URLSession sessionWithConfiguration:config delegate:self delegateQueue:[NSOperationQueue mainQueue]

NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration]; /** 参数 1. 配置 2. 代理 3. 代理工作的队列 - 代理的执行工作可以不再一个线程上 [NSOperationQueue mainQueue] 代理在主线程上工作 nil - 代理异步工作 [[NSOperationQueue alloc] init] - 代理在异步工作 注意:URLSession

网络-URLConnection & URLSession

1.URLConnection // 1. url // 1> 判断text是否以http开头 NSString *urlString = text; if (![text hasPrefix:@"http://"]) { // 2> 拼接URL字符串 urlString = [NSString stringWithFormat:@"http://m.baidu.com/s?word=%@", text]; } // 对于特殊字符,例如空格或者中文都需要

iOS Life Cycle of a URL Session URLSession生命周期 开发者文档翻译(一)

最近想把iOS网络这一块搞通.貌似国内中文资料太少了,无奈只能自己动手翻译开发者文档.决定抽时间把网络部分的全部翻译出来,工程浩大啊.有人想参与的话欢迎留言. 英文原文:developer URL Session的生命周期 你可以使用NSURLSession在两个方面:系统提供的代理和你自己的代理.一般来说,如果有下面的情况你必须使用自己的代理: 1.使用后台下载或者上传内容,同时你的app没有运行. 2.执行自定义的身份验证. 3.执行自定义的SSL证书验证. 4.决定是否应该下载到磁盘或者显

[Xcode10 实际操作]八、网络与多线程-(17)使用网址会话对象URLSession向远程服务器上传图片

本文将演示如何通过网址会话对象URLSession向远程服务器上传图片. 网址会话对象URLSession具有在后台上传和下载.暂停和恢复网络操作.丰富的代理模式等优点. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // D

iOS开发之URLSession

1.概述 n  NSURLSession是iOS7中新的网络接口,与NSURLConnection是并列的. n  当程序在前台时,NSURLSession与NSURLConnection大部分可以互相替代 n  NSURLSession支持后台网络操作,除非用户强行关闭 n  NSURLSession提供的功能: p 通过URL将数据下载到内存 p 通过URL将数据下载到文件系统 p 将数据上传到指定URL p 在后台完成上述功能 p 对于小型数据,例如用户登录.下载小图像.JSON & XM

iOS block从零开始

iOS block从零开始 在iOS4.0之后,block横空出世,它本身封装了一段代码并将这段代码当做变量,通过block()的方式进行回调. block的结构 先来一段简单的代码看看: void (^myBlock)(int a) = ^(int a){ NSLog(@"%zd",a); }; NSLog(@"旭宝爱吃鱼"); myBlock(999); 输出结果: 2016-05-03 11:27:18.571 block[5340:706252] 旭宝爱吃鱼

iOS开发网络篇—发送GET和POST请求(使用NSURLSession)

iOS开发网络篇—发送GET和POST请求(使用NSURLSession) 说明: 1)该文主要介绍如何使用NSURLSession来发送GET请求和POST请求 2)本文将不再讲解NSURLConnection的使用,如有需要了解NSURLConnection如何发送请求. 详细信息,请参考:http://www.cnblogs.com/wendingding/p/3813706.html 3)本文示例代码发送的请求均为http请求,已经对info.plist文件进行配置. 如何配置,请参考:

AFN的使用(待整理)

待整理 一.文件下载 1.创建下载 //1.创建会话管理者 AFHTTPSessionManager *manager =[AFHTTPSessionManager manager]; NSURL *url = [NSURL URLWithString:@"http://120.25.226.186:32812/resources/videos/minion_01.mp4"]; NSURLRequest *request = [NSURLRequest requestWithURL:u

数据安全基础知识总结

1.数据安全 01 数据安全的原则 1)在网络上"不允许"传输用户隐私数据的"明文" 2.)在本地"不允许"保存用户隐私数据的"明文" 1.png 2.Base64 1.Base64简单说明 描述:Base64可以成为密码学的基石,非常重要. 特点:可以将任意的二进制数据进行Base64编码 结果:所有的数据都能被编码为并只用65个字符就能表示的文本文件. 65字符:A~Z a~z 0~9 + / = 对文件进行base64编