1.什么是HTTP?
HTTP即超文本传输协议,工作在应用层。
它定义着计算机之间如何传递信息,包括:信息的数据结构、信息的接收发送方式。常见其用来传输文字、图片、音频文件、视频文件、压缩包等。如实现了HTTP协议的客户程序和服务器程序可以通过HTTP彼此交换信息。
2.它是如何工作的?
它利用TCP提供的可靠数据连接,传递信息。
如:实现HTTP协议的浏览器(实现了HTTP协议的客户端,同时可以解释web页面,或者说是一个用户/web的代理),与服务器进行过程如下。
1、浏览器向服务器发送请求:先通过TCP建立可靠的数据传输链路,之后HTTP将数据写到套接字(就想通往链路的门一样)中,转而传输到TCP链路中,和向服务器发送请求。
2、服务器向浏览器返回响应:服务器将数据写到自己的套接字中,转而传输到TCP链路中,向浏览器返回刚刚请求的响应。
注:HTTP是一个无状态的协议是指,客户向服务器发送请求后,服务器并不会记录/维护客户的任何信息,即客户再次发送同一个请求,服务器也会重新处理。