一次HTTP通信的过程
先放一张图,这个图上就基本说明了通信的过程,我觉得还是比较详细的。
文字说明过程如下
1. 建立TCP连接
- Web浏览器首先要通过网络与Web服务器之间通过TCP建立连接,TCP与IP协议共同构建Internet
- HTTP协议是比TCP处于更高层的应用层协议,只有当低层协议建立练接之后才能进行更高层次的连接
- TCP连接的端口号一般是80
2. Web浏览器向Web服务器发送请求行
- 建立TCP连接之后,Web浏览器会向Web服务器发送请求命令
3. Web浏览器向服务器发送请求头
- 浏览器发送请求信息之后,还要以头信息的形式发送相关信息,并以空行代表发送结束
4. Web服务器应答
- Web服务器接收请求后返回应答,第一部分是协议的版本号和应答状态码
例:“HTTP/1.1 200OK”
5. Web服务器发送应答头
- 服务器也会随着应答发送一些相关信息,并以空行代表发送结束
6. Web服务器发送数据
- Web服务器向浏览器发送头信息之后,就以
Content-Type
格式发送用户所请求的信息
7. Web服务器关闭TCP连接
- 一般情况下,一旦Web服务器向浏览器发送请求数据后,就要关闭TCP连接了
- 若浏览器或者服务器的头信息中加入了这样一段代码:
connection:Keep-alive
则TCP连接会保持打开状态,可以继续通过相同的连接发送请求