网络之NSURLSession】的更多相关文章

原文在此 一.整体介绍 NSURLSession在2013年随着iOS7的发布一起面世,苹果对它的定位是作为NSURLConnection的替代者,然后逐步将NSURLConnection退出历史舞台.现在使用最广泛的第三方网络框架:AFNetworking.SDWebImage等等都使用了NSURLSession.作为iOS开发人员,应该紧随苹果的步伐,不断的学习,无论是软件的更新.系统的更新.API的更新,而不能墨守成规. Session翻译为中文意思是会话,我们知道,在七层网络协议中有物理…
一.NSURLConnection补充 前面提到的NSURLConnection有些知识点需要补充 NSURLConnectionDataDelegate的代理方法有一下几个 - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { } - (void)connection:(NSURLConnection *)connection didReceiveData:…
iOS 7 和 Mac OS X 10.9 Mavericks 中一个显著的变化就是对 Foundation URL 加载系统的彻底重构. 现在已经有人在深入苹果的网络层基础架构的地方做研究了,所以我想是时候来分享一些对于我对于这些新的 API 的看法和心得了,新的 API 将如何影响我们编写程序,以及它们对于 API 设计理念的影响. NSURLConnection 作为 Core Foundation / CFNetwork 框架的 API 之上的一个抽象,在 2003 年,随着第一版的 S…
NSURLSession: 作用: 和NSURLConnection一样 1.负责发送请求,建立客户端和服务器的连接发送数据给服务器 2.并收集来自服务器的响应数据 步骤: 1.创建NSURLSession对象 2.利用NSURLSession创建任务(task) 3.执行任务 任务的类型: 1.NSURLSessionDataTask //普通的请求数据 2.NSURLSessionDownloadTask //下载数据 3.NSURLSessionUploadTask //上传数据 NSUR…
2013年的WWDC大会上,苹果推出了NSURLSession,对Foundation URL加载系统进行了彻底的重构,提供了更丰富的API来处理网络请求,如:支持http2.0协议.直接把数据下载到磁盘.同一session发送多个请求.下载是多线程异步处理和提供全局的session并可以统一配置等等,提高了NSURLSession的易用性.灵活性,更加地适合移动开发的需求. NSURLSession的介绍 1. session类型 Default session +defaultSession…
NSUrlSession参考的这篇博客,自己也调试了它的代码:http://www.it165.net/pro/html/201406/15223.html ,对NSUrlSession还不太理解,先记下笔记,随后慢慢消化 AppDelegate.h // // AppDelegate.h // NSUrlSession // // Created by City--Online on 15/4/27. // Copyright (c) 2015年 CYW. All rights reserve…
NSURLRequest 网络请求的关键的就是NSURLRequest类,它的实例表示了请求报文实体以及请求的缓存策略等等,各种网络框架的最终目标都是把这个对象编译成为请求报文发送出去.下面用一个实例来说明它的用法. //1.设置url和请求方法 NSString *urlString = [NSString stringWithFormat:@"http://maplecode.applinzi.com"]; NSMutableURLRequest *request = [[NSMu…
1.NSMutableURLRequest的设置 //创建NSMutableURLRequest对象 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; //设置请求类型 [request setHTTPMethod:@"POST"]; //设置超时时间 [request setTimeoutInterval:]; //设置缓存策略 [request setCachePolicy:NSURLR…
前言: 无论是Android还是ios都离不开与服务器交互,这就必须用到网络请求,记得在2013年做iOS的时候那时候用的ASIHTTPRequest框架,现在重新捡起iOS的时候ASIHTTPRequest已经停止维护,大家都在用AFNetWorking作为首选网络请求框架,之前的ASIHTTPRequest是基于NSURLConnection类实现的,早期的AFNetWorking也是基于NSURLConnection实现,后来iOS9 之后已经放弃了NSURLConnection,开始使用…
大家在进行iOS开发的时候一定会用到网络操作.但由于早期原生的 NSURLConnection 操作起来有很多不便,使得大家更愿意使用第三方库的解决方案,比如鼎鼎大名的 AFNetworking.正是因为这点,苹果团队为开发者提供了改进后的原生网络库支持,也就是 NSURLSession. NSURLSession 简介 NSURLSession 是苹果为我们提供的一套新的网络处理库.它的前身是 NSURLConnection,但由于 NSURLConnection 提供的接口使用起来不够简洁,…
1.网络请求 1.1 网络通讯三要素 1.IP 地址(主机名): 网络中设备的唯一标示.不易记忆,可以用主机名(域名). 1) IP V4: 0~255.0~255.0~255.0~255 ,共有 2\^8\^4 = 2\^32 = 42 亿. 2) 本地回环地址: 每台机器都有自己的本地回环地址,ip 为 127.0.0.1 ,主机名为 localhost.如果 127.0.0.1 ping 不通,则网卡不正常. 本地 hosts 文件修改,终端: $ cd /etc $ sudo vim h…
这篇是关于网络请求的,结合公司的实际情况编写,如果有不同意见欢迎留言共同讨论. iOS在9.0之后彻底放弃了NSURLConnection,现在已经改用了NSURLSession进行网络请求.一般现在网络请求也都是使用AFNetworking.下面就把我自己关于afn和系统的api使用写下来. 一.使用NSURLSession 移动端的网络请求主要是get请求和post请求, get和post请求步骤差不多,只不过post对于信息的传送更安全,post请求会设置body而且会对body进行加密,…
Paste JSON as Code • quicktype 软件的使用 iOS开发:官方自带的JSON使用 JSON 数据解析 XML 数据解析 Plist 数据解析 NetRequest 网络数据请求 NSURLConnection 网络请求 NSURLSession 网络请求 ASIHTTPRequest 网络请求 AFNetworking 网络请求 Alamofire 网络请求 Sign up/in 注册/登录 LocalCache 本地数据缓存 ImageCache 网络图片缓存 CF…
定义:描述 Foundation 框架类在标准的网络传输协议下,用 URLs 连接因特网并与服务器交互的一整套体系. 支持的传输协议: File Transfer Protocol (ftp://) Hypertext Transfer Protocol (http://) Hypertext Transfer Protocol with encryption (https://) Local file URLs (file:///) Data URLs (data://) 结构图 网络系统模块…
IOS最好要设置系统默认启动页面,不然进入应用就会突然闪现黑色画面 下图是我们要实现的效果: 总体思路:设置一个系统默认启动页面,在进入didFinishLaunchingWithOptions时, 给Window添加自定义启动页,其初始画面和系统启动页一样. 可在自定义启动页实现一些动画,动画结束后,将自定义启动页移除. 一.设置系统默认启动页 现在,新建项目会自动生成LaunchScreen.storyboard启动页面文件. 来到项目根目录  点击General  找到以下: 发现除了直接…
图片在APP中占有重要的角色,对图片做好缓存是重要的一项工作.[TOC] 理论 不喜欢理论的可以直接跳到下面的Demo实践部分 缓存介绍 缓存按照保存位置可以分为两类:内存缓存.硬盘缓存(FMDB.CoreData…).我们常说的网络请求缓存包含内存缓存.硬盘缓存和URL缓存. 图片缓存思路 网络请求缓存 网络请求出了客户端需要做简单的配置外,最主要需要服务器支持,服务端也很简单,只需要在response里面设置Cache-Control字段就行了. 最常见的网络请求缓存实现方式:NSURLCa…
//MD5 对字符串的加密 -(void)demo1 { NSString *str = @"love"; //对字符串进行MD5加密 str = str.md5String; NSLog(@"str : %@",str); //对于比较简单的密码,可以通过一些网站查到,如:http://www.cmd5.com //人为的增加密码的难度,可以对 MD5 进行加盐 //用户密码 + 盐值 MD5运算 NSString *password = "; //增加…
iOS由该系统提供API可以实现可以实现文件的上传和下载,有两种方法来. NSURLConnection与NSURLSession. 当中NSURLConnection是使用非常久的的一种方式.NSURLSession是新出来的一种方式. 一. POST方式上传 POST方式提交信息默认使用的是 : *Content-Type:  application/x-www-form-urlencoded. *输入中文时,post方式自己主动进行转义(苹果中自己主动). 国内的绝大多数站点都採用这样的方…
推荐理由 ATS(App Transport Security),是苹果在WWDC 15提出的,苹果将收紧http的访问,这样会造成我们周边的许多站点和应用均不能正常访问,这里就对ATS进行了简单分析.和如何利用TBS解决ATS问题. 2017年1月1日以后,所有iOS需要访问网页的app都要面临一个问题:ATS. ATS(App Transport Security),是苹果在WWDC 15提出的,Apple 在推进网络通讯安全的一个重要方式,按照苹果的要求非https的网络访问是被禁止的:当…
0.OC语法基础 CHOCBase Object C语法学习笔记(一) Object C语法学习笔记(二) 1.UI类 自定义控件程序运行流程 setNeedsLayOut和setNeedsDisplay区别 masonry使用技巧 布局约束SDAutoLayout 1.1 普通展示 UILabel UIView UI控件的位置 UICollectionViewController UIPageViewController UITextView UITableViewController UII…
NS类集合介绍 1.常用部分 NSDictionary NSString NSArray 数组 NSTimer 定时器 NSRange 范围 NSNotification 2.网络相关 NSURLConnection 网络请求 NSURLSession 网络请求 网络请求 ios 9以上,原生代码实现断点续传. 3.时间日期相关 NSCalendar日历 NSTimeZone时区 NSDate 时间 判断相隔一天 4.数据存储相关 4.1 获得指定目录下,指定后缀名的文件列表 NSKeyedAr…
Cookie简介说到Cookie,或许有些小伙伴会比较陌生,有些小伙伴会比较熟悉.如果项目中,所有页面都是纯原生来实现的话,一般Cookie这个东西或许我们永远也不会接触到.但是,这里还是要说一下Cookie,因为它真的很重要,由它产生的一些坑也很多. Cookie 在 web中应用比较多,主要是记录一个状态,比如我在网页上登录了,我就可以拿到网页登录后 Cookie,下次再 Cookie 的生效期内我就可以不用输入账号密码,直接跳转登录状态,在App中,Cookie最常用的也就是维持登录状态了…
一.推送通知 推送通知就是向用户推送一条信息来通知用户某件事件,可以在应用退到后台后,或者关闭后,能够通过推送一条消息通知用户某件事情,比如版本更新等等. 推送通知的常用应用场景: 一些任务管理APP,会到任务时间即将到达时,通知你该做任务了. 健身APP定时提醒你应该健身了. 买过电影票,提前半个小时通知你,电影即将开场. 当你QQ或微信收到信息时,即使退到后台,也可以收到信息通知你. 电商APP,推送一条消息通知我们有新品上架等等. 推送通知的常用展示样式: 屏幕顶部显示一块横幅 在锁屏界面…
在iOS 7中,Apple更新了iOS中的网络基础架构,新推出的网络基础架构是NSURLSession(原来的网络基础架构NSURLConnection). iOS开发中往往会涉及网络数据处理,像其他开发环境一样,iOS也提供了网络开发的基础架构(叫做“库”也可以),是谓“Apple原生网络基础架构”,在iOS 7之前,iOS提供的网络架构叫NSURLConnection:在iOS 7中,Apple更新的iOS中的网络基础架构,新推出的东东叫NSURLSession: 说明:NSURLSessi…
原文出处: Yasin的简书 理论 不喜欢理论的可以直接跳到下面的Demo实践部分 缓存介绍 缓存按照保存位置可以分为两类:内存缓存.硬盘缓存(FMDB.CoreData…).我们常说的网络请求缓存包含内存缓存.硬盘缓存和URL缓存. 图片缓存思路 图片缓存流程图.png URL缓存 网络请求除了客户端需要做简单的配置外,最主要需要服务器支持,服务端也很简单,只需要在response里面设置Cache-Control字段就行了. 最常见的URL缓存实现方式:NSURLCache.NSURLCac…
个人感觉在网上很难找到很简单的网络请求.或许是我才疏学浅 ,  所有就有了下面这一段 , 虽然都是代码 , 但是全有注释 . //1/获取文件访问路径 NSString *path=@"http://1.studyios.sinaapp.com/getAllClass.php"; //2.封装URL NSURL *url=[NSURL URLWithString:path]; //3.创建请求命令 NSURLRequest *request=[NSURLRequest requestW…
有的程序员老了,还没听过NSURLSession有的程序员还嫩,没用过NSURLConnection有的程序员很单纯,他只知道AFN. NSURLConnection在iOS9被宣布弃用,NSURLSession从13年发展到现在,终于迎来了它独步江湖的时代.NSURLSession是苹果在iOS7后为HTTP数据传输提供的一系列接口,比NSURLConnection强大,坑少,好用.今天从使用的角度介绍下. 除了NSURLSession,文中还会频繁地出现NSURLSessionConfigu…
首先配置into.plist文件 1. 添加 App Transport Security Settings , Type栏自动变为Dictionary 2. 点击左边箭头,使之向下,点击右边加号,添加 Allow Arbitrary Loads (Xcode 7.0之后会默认填充Allow Arbitrary Loads ) 3. 将value 改为YSE -- -- 代码实现 -- -- #import "ViewController.h" //NSURLSessionDataDe…
#import "ViewController.h" @interface ViewController ()<NSURLSessionDelegate, NSURLSessionDownloadDelegate> @property (weak, nonatomic) IBOutlet UIProgressView *progressView; //进度条 @property(nonatomic, strong) NSURLSessionTask *downLoadTas…
目前,在iOS的开发中,NURLConnection已经成为了过去式,现在的NSURLConnection已经deprected(iOS7之后),取而代之的是NSURLSession.而且AFNetworking 也已经换成了NSURLSession.既然是大势所趋,现总结NSURLSession用法如下: 首先,是根据简单地按钮实现对应的网络操作: 1.NSURLSessiion 的GET网络请求: 要实现网络请求,首先,要准备好URLl 和 必要的参数,而GET最大的特点就是参数是直接的拼接…