HTTP协议(超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,
所有的WWW文件都必须遵守这个标准.
HTTP是一个基于TCP/IP通信协议来传递数据;(HTML文件,图片文件,查询结果)
HTTP工作原理
HTTP协议工作于客户端-服务端架构上.浏览器作为HTTP客户端通过URL
向HTTP服务端(WEB服务器)发送所有请求.
Web服务器根据接收到的请求后,向客户端发送响应信息.
HTTP默认端口号为80,但是你也可以改为8080或者其他端口.
HTTP注意事项:
HTTP是无连接:无连接的含义是限制每次连接只处理一个请求.服务器处理完
客户的请求,并受到客户的应答后,即断开连接,采用这种方式可以
节省传输时间.
HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理数据内容,任何
类型的数据都可以通过HTTP发送.客户端以及服务器指定使用合适的
MIME-type内容类型
HTTP是无状态:HTTP是无状态协议.无状态是指协议对于事物处理没有记忆.
缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样
可能导致每次连接传送的数据量增大.另一方面,在服务器不需要先前信息是
它的应答就较快.
HTTP消息结构
HTTP是基于客户端/服务端(C/S)的架构模型,通过一个可靠的链接来交换信息,
是一个无状态的请求/响应协议.
一个HTTP客户端是一个应用程序(Web浏览器),通过连接到服务器达到向服务器发送一个
或者多个HTTP的请求的目的.
一个HTTP服务器同样也是一个应用程序(Web服务器),通过接收客户端的请求并向客户端
发送HTTP响应数据.
HTTP使用统一的资源标识符(URL)来传输数据和建立连接.
一旦建立连接后,数据消息就通过类似Internet邮件所使用的格式和
多用途Internet邮件扩展(MIME)来传送.
客户端请求消息
客户端发送一个HTTP请求到服务器的请求消息包括以下格式:
请求行 request line
请求头 header
空行
请求数据
服务器响应消息
HTTP响应也有四部分组成,分别是:
状态行
消息报头
空行
响应正文
HTTP请求方法
根据HTTP标准,HTTP请求可以使用多种请求方法。
HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
HTTP 响应头信息
HTTP请求头提供了关于请求,响应或者其他的发送实体的信息。