HTTP 介绍
1. HTTP请求与响应
HTTP请求遵循着客户端-服务器范式
请求步鄹序列:客户端建立一个到服务器的TCP连接 》发送HTTP请求 》服务器随后通过在同一个TCP连接上发送HTTP响应该请求。接下来,客户端可以重用这个TCP连接,发送另一个请求或是将连接关闭。早期HTTP协议版本只允许在一个TCP连接上发送一个请求。HTTP 1.1则允许客户端重用连接
HTTP 与 HTTPS 之间的最重要差别在于会话的连接建立阶段。在TCP连接建立好,HTTP请求发送之前,客户端与服务器之间必须建立SSL会话,SSL会话建立包含:客户端与服务器协商使用何种密码、交换公钥、验证协商以及验证身份。当SSL会话建立完毕后,在TCP连接之上传输的所有数据都将加密。
2.URL 结构
协议 认证 主机名 端口 绝对路径 查询字符串
http://user:password@hostname:port/absolute-path?query
IOS 的URL加载系统中,NSURL对象用于管理URL对象, 由于绝对路径与查询字符串的内容受限,因此URL通常会使用百分号进行编码。 http://www.jianshu.com/p/6722d6fe1403
3.请求内容
HTTP请求包含3个部分:请求行、请求头与请求体
请求行是发送给服务器的第一行数据。请求行中包含3方面主要信息:HTTP请求方法、请求URI 与HTTP版本
IOS 中,NSURLRequest 及其子类NSMutableURLRequest提供了必要的方法与属性来构建HTTP请求
4.响应内容
在HTTP服务器与应用服务器处理完请求后,HTTP响应会通过同一个TCP socket返回给客户端。HTTP响应的结构 第一行为状态行,后面是头,然后为响应体
response.jpgIOS 中,NSURLResponse 及其子类NSMutableURLResponse封装请求返回的数据
网友评论