HTTP
整个HTTP请求的工作流程如下:
(1)终端客户在Web浏览器地址栏输入访问地址http://www.etiantian.org/index.html
(2)Web浏览器请求DNS解析后把域名www.etiantian.org转换成Web服务器的IP地址
(3)Web浏览器接端口号从访问地址解析出来
(4)Web浏览器通过解析后的IP地址及端口号与Web服务器之间建立一条TCP连接。
(5)建立TCP连接后,Web浏览器向Web服务器发送一条HTTP请求报文
(6)Web服务器读取并响应浏览器的请求信息,然后返回一条HTTP响应报文
(7)Web服务器关闭HTTP连接,关闭TCP连接,Web浏览器显示访问的网站内容到屏幕上
HTTP请求报文:
HTTP请求报文由请求行、请求头部、空行、和请求报文主体几部分组成。
(1)请求行是请求报文的第一行,用来说明客户端想要做什么。内容由请求方法字段、URL字段和HTTP协议版本字段组成,它们之间用空格分隔,如 GET /index.html HTTP/1.1
(2)请求头部由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔,请求头部的作用是通过客户端吧请求的相关信息告诉给服务器。
(3)空行,最后一个请求头部信息之后是一个空行,通过发送回车符和换行符,通知Web服务器空行以下不会有请求头部信息了。
(4)请求报文主体中包括了要发送给Web服务器的数据信息。请求报文主体不会应用于HTTP的GET命令方法,而是应用于POST方法。POST方法适用于需要需要客户填写表单的场合。
HTTP响应报文:
HTTP响应报文由起始行、响应头部、空行、和响应报文主体这几部分组成,和HTTP请求报文格式类似。
(1)起始行,响应报文的起始行也叫状态行,用来说明服务器响应客户端请求的状况。一般为协议及版本号、数字状态码、状态情况。例如:HTTP/1.1 200 OK。
(2)响应头部,和请求报文类似,起始行的后面一般有若干个头部字段。每个头部字段都包含一个名字和一个值,两者之间用冒号分隔。头部结尾也是一个空行结束的。
(3)空行,最后一个响应头部信息之后是一个空行,通过发送回车符合换行符,通知客户端空行下文武头部信息了、
(4)响应报文主体中装载了要返回给客户端的数据。这些数据可以是文本,也可以是二进制的(如图片,视频)。
浙公网安备 33010602011771号