iOS 网络高级编程二:HTTP并没有那么简单
来源:互联网 发布:网络远程教育可靠吗 编辑:程序博客网 时间:2024/06/15 08:07
HTTP协议 早在1990年就问世了
一、HTTP 请求步骤序列:
注意:从上图可以看初HTTP是基于TCP的
HTTP与HTTPS之间的区别在于会话的建立阶段。
HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
SSL触发时间:TCP建立好、HTTP请求前
SSL会话建立包含多个阶段:客户端与服务端协商使用何种密码、交换公钥、验证协商以及验证身份(可选)。
当SSL会话建立完毕之后,在TCP连接之上传输的所有数据都将是加密的。
二、有关于URL结构
通常,URL由5部分构成:
三、请求内容
HTTP请求包含 3 部分:请求行、请求头、请求体。
- GET
- POST
- HEAD
- PUT
- DELETE
虽然使用了有状态的TCP传输层、但是HTTP是个无状态协议。这意味着HTTP服务器并不会保留某个请求的任何信息。 Cookie提供了这种简单信息存储方式。
四、响应内容
HTTP与客户端完成请求后、HTTP响应会通过TCP socket返回给客户端。HTTP响应的结构类似于HTTP请求。
HTTP响应包含:状态行、头、响应体。
阅读全文
0 0
- iOS 网络高级编程二:HTTP并没有那么简单
- IOS高级编程(网络编程二)
- iOS 网络编程 (二)HTTP
- 并没有那个艰难,但也并没有那么简单
- 替换DOM中的文本,并没有那么简单!
- 类中static并没有那么简单
- Android自定义Notification并没有那么简单
- Android自定义Notification并没有那么简单
- iOS高级网络编程
- iOS网络高级编程
- IOS网络编程:HTTP
- IOS网络编程:HTTP
- IOS网络编程:HTTP
- IOS网络编程:HTTP
- IOS网络编程:HTTP
- IOS网络编程:HTTP
- IOS网络编程:HTTP
- IOS网络编程:HTTP
- ac自动机与状态转移
- GO语言linux下环境变量
- HDU2577:How to Type 简单DP
- Statement&PreparedStatement&CallableStatement
- Linux系统--/proc/uptime文件中参数说明
- iOS 网络高级编程二:HTTP并没有那么简单
- ajax跨域jsonp的两种解决办法
- 事先规划RTL结构
- TCP协议用在python和wifi模块之间
- 可能与不可能的边界:P/NP问题趣史
- Python爬虫从入门到懵逼-1
- 如何让子元素居于父元素底部
- hibernate之持久化类,主键生成策略,事务,缓存,查询api(02)
- 2012 浙大机试 Sharing