什么是HTTP
超文本传输协议(HyperText Transfer Protocol,HTTP)是由W3C组织推出的,专门用于定义浏览器与Web服务器之间数据交换的格式。它不仅可以保证计算机正确快速地传输超文本文档,还可以确定传输文档中的哪一部分,以及哪部分内容首先展示。
HTTP是浏览器与Web服务器之间数据交互遵循的一种规范,其交互过程如图1所示。
图1 浏览器与Web服务器交互过程
从图1可以看出,HTTP是一种基于“请求”和“响应”的协议,当客户端与服务器建立连接后,由客户端(浏览器)向服务器端发送一个请求,被称作HTTP请求,服务器接收到请求后会做出响应,称为HTTP响应。而HTTP之所以在Web开发中占据重要的位置,其原因如下。
(1)简单快速:客户端向服务器请求服务时,只需传送请求方式和路径即可。由于HTTP简单,使得HTTP服务器的程序规模小,通信速度快。
(2)灵活:HTTP允许传输任意类型的数据,传输的数据类型由Content-Type标记。
(3)无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
(4)无状态:HTTP是无状态协议。无状态是指协议对于事物处理没有记忆能力。意味着如果后续处理需要前面的信息,则它必须重新传递,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时,应答就比较快。