HTTP的基本特性
-
HTTP是简单的
虽然下一代HT TP/2协议将HTTP消息封装到了帧中,HTTP大体上还是被设计得简单易读。
HTTP报文能够被人读懂,还允许简单测试,降低了门门槛。
-
HTTP是可扩展的
在HTTP/1.0中出现的HTTP headers让协议扩展变得非常容易。
-
HTTP是无状态,有会话的
在同一个连接中,两个执行成功的请求之间是没有关系的。这就带来了一个问题,用户没有办法在同一个网站中进行连续的交互。
-
HTTP和连接
一个连接是由传输层来控制的,这从根本上不属于HTTP的范围。
HTTP能控制什么
- 缓存
- 开放同源限制
- 认证
- 基本的认证功能可以直接通过HTTP提供,或用HTTP Cookies来设置指定的会话。
- 代理和隧道
- 通常情况下,服务器和/或客户端是处于内网的,对外网隐藏真实IP地址。因此HTTP请求就要通过代理越过这个网络屏障。
- 会话
HTTP流
-
打开一个TCP连接: TCP连接被用来发送一条或多条请求,以及接受回应消息。
-
发送一个HTTP报文: HTTP报文(在HTTP/2之前)是语义可读的.
GET / HTTP/1.1 Host: developer.moilla.org Accept-Language: fr -
读取服务端返回的报文信息:
HTTP/1.1200 OK Last-Modified: Tue, 01 Dec 2009 20:18:22 GMT Content-Length: 29769 Content-Type: text/html -
关闭连接或者为后续请求重用连接。
HTTP报文是什么
请求报文由以下元素组成:一个HTTP的method、要获取的资源的路径、HT TP协议版本号、为服务端表达其他信息的可选头部headers以及对于一些像POST这样的方法。

HTTP响应报文
响应报文由以下元素组成: HT TP协议版本号、一个状态码、一个状态信息、HTTP headers以及包含获取的资源body。

本文深入解析了HTTP协议的基本特性,包括其简洁性、可扩展性、无状态性以及如何通过连接、缓存、认证等机制实现高效的数据交换。同时,详细介绍了HTTP报文的构成和工作流程。

被折叠的 条评论
为什么被折叠?



