HTTP报文:用于HTTP协议交互的信息,是由多行(用CR+LF作换行符)数据构成的字符串文本。
HTTP报文大致可分为报文首部和报文主体两块。两者由最初出现的空行来划分。通常并不一定要有报文主体。
HTTP有两类报文:请求报文和响应报文,下面记录这两类报文的结构
请求报文结构
HTTP请求报文由请求行(request line)、请求头部(header)、空行(break line)和请求数据(request body)4个部分组成
请求行
请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔。例如,GET /index.html HTTP/1.1
HTTP协议的请求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。
空行
用以划分报文首部与报文主体
请求数据
请求数据不在GET方法中使用,而是在POST方法中使用。POST方法适用于需要客户填写表单的场合。与请求数据相关的最常使用的请求头是Content-Type和Content-Length
请求头举例
响应报文结构
HTTP响应报文也由四个部分组成:状态行(status line)、消息报头(header)、空行(blank line)响应正文(response body)