HTTP的介绍和通信机制
http(Hypertext Transfer Protocol)超文本传输协议,是一套计算机通过网络进行通信的规则,是一个设计来使客户端和服务器顺利进行通信的协议。http遵循请求(request)/应答(response)模型,web浏览器向web服务器发送请求,web服务器处理请求并返回适当的应答。
http内容类型含:html文档、gif格式图像、声音文件,还有独立的应用程序。
http通信机制是在一次完整的通信过程中,web浏览器和web服务器完成以下7个步骤:
1.建立TCP连接
http协议是比tcp(传输层)更高层的应用层协议,低层协议建立后才能建立更高层的连接。所以在http工作之前,web浏览器首先要通过网络与web服务器建立连接,该连接是通过tcp完成的,一般tcp端口为80. 注:可以了解一下网络七层模型。
2.web浏览器向web服务器发送请求命令
一旦建立了tcp连接,web浏览器就会向web服务器发送请求命令。
如,GET/sample/hello.jsp HTTP/1.1
3.web服务器发送应答头信息
web浏览器发送请求命令后,还要以头信息的形式向web服务器发送一些别的信息,之后web浏览器发送一行空白行来通知web服务器,它已经结束了该头信息的发送。
4.web服务器应答
web服务器应答,应答的第一部分是协议的版本号和应答状态码
HTTP/1.1 200 OK
5.web服务器发送应答头信息
web服务器会随同应答向用户发送关于它自己的数据及被请求的文档。之后服务器会发送一个空白行来表示头信息的发送到此为结束。
6.web服务器向web浏览器发送数据
头信息发送结束后,web服务器将以Content-Type应答头信息所描述的格式发送用户所请求的实际数据。
7.web服务器关闭TCP连接
一般情况下,web服务器向web浏览器发送了应答数据就要关闭tcp连接,然而如果浏览器或服务器在其头信息中加入了这行代码Connection:keep-alive,tcp连接将仍然保持打开状态,浏览器可以继续通过相同的连接发送请求。保持连接节省了为每个请求建立新连接所需的实际,还节约了网络带宽。