面试之HTTP协议相关的问题
HTTP的请求报文结构和响应报文结构 HTTP请求报文 主要由请求行、请求头、空行、请求正文(Get请求没有请求正文)4部分组成。 1、请求行 由三部分组成,分别为:请求方法、URL以及协议版本,之间由空格分隔; 请求方法包括GET、HEAD、PUT、POET、TRACE、OPTIONS、DELETE以及扩展方法,当然并不是所有的服务器都实现了所有的方法,部分方法即便支持,出于安全性的考虑也是不同的; 协议版本的格式为:HTTP/主版本号.次版本号,常用的有HTTP/1.0和HTTP/1.1; 2、请求头 请求头部为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔。 常见请求头如下: 3、空行 请求头的最后会有一个空行,表示请求头部结束,接下来为请求正文,这一行非常重要,必不可少。 4、请求正文 可选部分,比如GET请求就没有请求正文。 HTTP响应报文 主要由状态行、响应头、空行、响应正文4部分组成。 1、状态行 由3部分组成,分别为:协议版本、状态码、状态码描述,之间由空格分隔; 2、响应头 与请求头类似,为响应报文添加一些附加信息。 常见响应头如下: 3、空行 4、响应正文 常见HTTP首部字段 A、通用首部字段(请求报文与响应报文都会使用的首部字段 ) Date:创建报文时间