什么是HTTP协议
精华
小牛编辑
262浏览
2023-03-14
1 什么是HTTP协议
超文本传输协议(HTTP)是分布式,协作式超媒体信息系统的应用程序级协议。自1990年以来,HTTP就是互联网(即Internet)数据通信的基础。HTTP是一种通用的无状态协议。
HTTP是基于TCP/IP的通信协议,用于在万维网上传递数据(HTML文件,图像文件,查询结果等)。默认端口是TCP:80,当然也可以使用其他端口。它为计算机相互通信提供了一种标准化的方式。HTTP规范指定如何构造客户端的请求数据并将其发送到服务器,以及服务器如何响应这些请求。
2 HTTP协议的特征
HTTP有三个基本特征:
- HTTP是无连接的: HTTP客户端,即浏览器,启动HTTP请求,并且在发出请求后,客户端等待响应。服务器处理该请求并返响应,然后客户端断开连接。因此,客户端和服务器仅在当前请求和响应期间相互认识。对新连接的进一步请求,例如客户端和服务器彼此都是新的。
- HTTP是独立于的:这意味着,只要客户端和服务器都知道如何处理数据内容,任何类型的数据都可以通过HTTP发送。客户端和服务器都需要使用适当的MIME类型指定内容类型。
- HTTP是无状态的:如上所述,HTTP是无连接的,这是HTTP是无状态协议的直接结果。服务器和客户端仅在当前请求期间彼此知道。之后,他们俩彼此就毫无关系了。由于协议的这种性质,客户端和浏览器都无法在整个网页的不同请求之间保存信息。
注意:HTTP/1.0对每个请求/响应交换都使用一个新的连接,而HTTP/1.1连接可以用于一个或多个请求/响应交换。
3 Web应用架构
下图描述了Web应用程序的非常基本的体系结构,并描述了HTTP所处的位置:
HTTP协议是基于基于客户端/服务器的体系结构的请求/响应协议,其中Web浏览器,机器人和搜索引擎等充当HTTP客户端,而Web服务器充当服务器。
3.1 HTTP客户端
HTTP客户端以请求方法,URI和协议版本的形式向服务器发送请求,后跟类似MIME的消息,其中包含请求修饰符,客户端信息以及可能的TCP/IP连接的正文内容。
3.2 HTTP服务器
HTTP服务器以状态行作为响应,包括消息的协议版本和成功或错误代码,后跟类似MIME的消息,其中包含服务器信息,实体元信息以及可能的实体主体内容。