- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
iOS面试必看,最全梳理(二)
iOS 面试必看,最全梳理(二)
来源:Jack_lin 的简书
HTTP 协议的特点,关于HTTP 请求GET 和POST 的区别
GET 和POST 的区别:
HTTP 超文本传输协议,是短连接,是客户端主动发送请求,服务器做出
响应,服务器响应之后,链接断开。HTTP 是一个属于应用层面向对象的
协议,HTTP 有两类报文:请求报文和响应报文。
HTTP 请求报文:一个HTTP 请求报文由请求行、请求头部、空行和请求数
据4 部分组成。
HTTP 响应报文:由三部分组成:状态行、消息报头、响应正文。
GET 请求:参数在地址后拼接,没有请求数据,不安全(因为所有参数都
拼接在地址后面),不适合传输大量数据(长度有限制,为1024 个字节)。
GET 提交、请求的数据会附在URL 之后,即把数据放置在HTTP 协议头中。
以?分割URL 和传输数据,多个参数用连接。如果数据是英文字母或数字,原
样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE64
加密。
POST 请求:参数在请求数据区放着,相对GET 请求更安全,并且数据大
小没有限制。把提交的数据放置在HTTP 包的包体中.
GET 提交的数据会在地址栏显示出来,而POST 提交,地址栏不会改变。
传输数据的大小:
GET 提交时,传输数据就会受到URL 长度限制,POST 由于不是通过URL
传值,理论上书不受限。
安全性:
POST 的安全性要比GET 的安全性高;
通过GET 提交数据,用户名和密码将明文出现在URL 上,比如登陆界面有
可能被浏览器缓存。
HTTPS:安全超文本传输协议(Secure Hypertext Transfer Protocol),
它是一个安全通信通道,基于HTTP 开发,用于客户计算机和服务器之间
交换信息,使用安全套结字层(SSI)进行信息交换,即HTTP 的安全版。
ASIHttpRequest、AFNetWorking 之间的区别
ASIHttpRequest 功能强大,主要是在MRC 下实现的,是对系统CFNetwork
API 进行了封装,支持HTTP 协议的CFHTTP,配置比较复杂,并且
ASIHttpRequest 框架默认不会帮你监听网络改变,如果需要让
ASIHttpRequest 帮你监听网络状态改变,并且手动开始这个功能。
AFNetWorking 构建于NSURLConnection、NSOperation 以及其他熟悉的
Foundation 技术之上。拥有良好的架构,丰富的API 及模块构建方式,
使用起来非常轻松。它基于NSOperation 封装的,
AFURLConnectionOperation 子类。
ASIHttpRequest 是直接操作对象ASIHttpRequest 是一个实现了NSCoding
协议的NSOperation 子类;AFNetWorking 直接操作对象的AFHttpClient,
是一个实现NSCoding 和NSCopying 协议的NSObject 子类。
同步请求:ASIHttpRequest 直接通过调用一个startSynchronous 方法;
AFNetWorking 默认没有封装同步请求,如果开发者需要使用同步请求,
则需要重写getPath:paraments:success:failures 方法,对于
AFHttpRequestOperation 进行同步处理。
性能对比:AFNetworking 请求优于ASIHttpRequest;
XML 数据解析方式各有什么不同,JSON 解析有哪些框架?
XML 数据解析的两种解析方式:DOM 解析和SAX 解析;
DOM 解析必须完成DOM 树的构造,在处理规模较大的XML 文档时就很耗内
存,占用资源较多,读入整个XML 文档并构建一个驻留内存的树结构(节
点树),通过遍历树结构可以检索任意XML 节点,读取它的属性和值,通
文档评论(0)