1)建立TCP连接(之前需要完成DNS的解析)
在HTTP工作开始之前,客户单首先通过网络与服务器建立连接,该连接是通过TCP来完成的, 该协议与IP协议共同构建Internet,即著名的
TCP/IP协议族,因此Internet又被称为TCP/IP网络,HTTP是比TCP更高层次的应用层析协议,根据规则,只有低层协议建立后,才能进行高层协议的连接,一次你,首先要建立TCP连接,一般TCP连接的端口号80;
2)客户端向服务器端发送请求命令
一旦建立TCP连接,客户端就会向服务器发送请求命令,例如 GET/SAMPLE/hello.jsp HTTP/1.1 请求方法+请求URI+HTTP协议版本
3)客户端发送请求头信息
客户端发送请命令之后,还要以头信息单点心事先服务器发一些别的额信息,之后客户端发送一空白行来通知服务器,它已经结束了盖头信息的发送;
4)服务器端应答
客户端向服务器发出请求后,服务器回应客户端的额响应,例如 HTTP/1.1 200 ok 协议的版本号+响应状态码+回复信息
5)服务器返回响应头信息
正如客户端会随同请求发送关于自身的信息一样,服务器也随同响应向用户发送关于他自己的数据及被请求的文档。
6)服务器向客户端发送数据
服务器向客户端发型头信息后,它好UI发送一个空白行来表示偷袭新的发送到此结束,接着,它以Content-type响应头信息所描述的格式发送用户所请求的实际数据
7)服务器关闭TCP连接
一般情况下,一旦服务器想向户端返回了请求数据,它就要关闭TCP连接,然后如果客户端或者服务器在其头信息加入了这行代码Connection:keep-alive,TCP连接在发送后将仍然保持打开状态,于是,客户端还可以继续通过相同搞得而连接发送请求。保持连接节省了为没给请求建立新连接所需的时间,还节约了网络带宽。
来源:oschina
链接:https://my.oschina.net/u/2520665/blog/3102957