iOS开发--HTTP网络之介绍

2015-08-19  本文已影响103人  JohnnyB0Y

这是我个人的学习笔记 , 如有不同见解欢迎评论交流 .
( 我的微博 : http://weibo.com/JohnnyB0Y )

  • HTTP 1.1 介绍

一个建立在TCP之上的通过HTML定义的超文本传输协议.

1.C端建立一个到S端的TCP连接,然后发送HTTP请求.
2.S端随后通过在同一个TCP连接上发送一个HTTP响应来响应请求.
3.C端接着可以重用这个TCP连接,发送另一个请求或将连接关闭.

1.两者主要差别在于会话的连接建立阶段.
2.在TCP连接建立好,HTTP请求发送前( 加入建立一个SSL会话 ),用于C端与S端协商使用何种密码,交换公钥,验证协商以及验证身份(可选).
3.当SSL会话建立完毕后,在TCP连接之上传输的所有数据都是加密的.

1.请求行: 包含了( HTTP请求方法 )( 请求URI )( HTTP版本 )三方面信息.
2.请求头: 向服务器提供额外的元数据.
3.请求体: 可选的有固定数据编码格式的数据.

1.状态行: 包含了( HTTP版本 )( 状态码 )( 文本说明 )三方面信息.
2.响应头: 服务器响应的元数据.
3.响应体: 服务器返回的有固定数据编码格式的数据.


网络请求方式 :
NSURLConnection 方法步骤
GET请求 :
1. 创建URL地址字符串
2. 拼接参数
3. URL字符串进行百分号编码
4. 生成URL对象
5.根据URL对象创建请求,并设置请求参数
6. 开始连接,发送请求
POST请求 :
1. 创建URL地址字符串
2. URL字符串进行百分号编码
3. 生成URL对象
4.根据URL对象创建请求,并设置请求参数
5.拼接HTTPBody : 参数表
6. 开始连接,发送请求
通过代理方法处理网络请求 :
1.接收到服务器响应后 ( 做拼接数据前的准备 ) - connection: didReceiveResponse:
2.接收到数据后 ( 拼接数据 ) - connection: didReceiveData:
3.接收数据完成 - connectionDidFinishLoading:
4.错误处理 - connection: didFailWithError:
上一篇 下一篇

猜你喜欢

热点阅读