网络/协议
超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而 消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使开发和部署非常地直截了当。
在1990年,HTTP就成为WWW的支撑协议。当时由其创始人WWW之父蒂姆·伯纳斯·李(Tim Berners-Lee)提出,随后WWW联盟(WWW Consortium)成立,组织了IETF(Internet Engineering Task Force)小组进一步完善和发布HTTP。
HTTP是应用层协议,同其他应用层协议一样,是为了实现某一类具体应用的协议,并由某一运行在用户空间的应用程序来实现其功能。HTTP是一种协议规范,这种规范记录在文档上,为真正通过HTTP进行通信的HTTP的实现程序。
HTTP是基于B/S架构进行通信的,而HTTP的服务器端实现程序有httpd、nginx等,其客户端的实现程序主要是Web浏览器,例如Firefox、Internet Explorer、Google Chrome、Safari、Opera等,此外,客户端的命令行工具还有elink、curl等。Web服务是基于TCP的,因此为了能够随时响应客户端的请求,Web服务器需要监听在80/TCP端口。这样客户端浏览器和Web服务器之间就可以通过HTTP进行通信了。
HTTP,即超文本传输协议(Hypertext Transfer Protocol),是用于传输超媒体文档(例如 HTML)的应用层协议。HTTP协议是基于客户端-服务端架构模型工作的,客户端发起HTTP请求,服务端响应HTTP请求并返回HTTP响应。HTTP协议通常使用TCP作为传输协议,可以在Web浏览器和Web服务器之间传输数据。
HTTP协议的主要特点如下:
简单快速:客户端向服务器请求文档或服务时,只需要传送请求方法、URL和HTTP协议的版本号等信息,不必传送大量的请求头信息,因此简单、快速。
灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type字段来标记。
无连接:HTTP协议采用“无连接”的方式,即客户端发送请求后,服务器发送响应后,立即断开连接,简化设计,提高传输速度。
无状态:协议本身没有记忆机制,服务器不知道客户端是否发送过请求,客户端也不知道服务器是否已经响应过其它请求,每个请求都是独立的,因此称为无状态协议。为了实现会话保持,会使用一些机制,比如Cookie和Session等。
HTTP协议是Web应用程序设计的基础,很多前端和后端的开发工作都离不开HTTP协议,因此理解HTTP协议的工作原理和特点是非常重要的。
全部0条评论
快来发表一下你的评论吧 !