HTTP的报文结构

来源:互联网 发布:win10 windows update 编辑:程序博客网 时间:2024/04/28 05:36

请求报文结构如下表,如下:

报文首部 空行(CR+LF) 报文主体 请求行(包含方法、URI、HTTP版本) 请求首部字段(补充请求的附加内、客户端信息、响应内容相关优先级等) 通用首部字段(请求、响应报文都会使用的首部) 实体首部字段(补充资源内容,更新时间和实体相关的信息) 其他

响应报文结构如下表,如下:

报文首部 空行(CR+LF) 报文主体 状态行(包含HTTP版本、状态码) 响应首部字段(补充响应的附加内容,也会要求客户端添加额外的内容信息) 通用首部字段(请求、响应报文都会使用的首部) 实体首部字段(补充资源内容,更新时间和实体相关的信息) 其他

通用首部字段列表

通用首部字段名 说明 Cache-Control 控制缓存的行为 Connection 控制不在转发给代理的首部字段、管理持久链接 Date 创建报文的日期和时间 Pragma 仅作为HTTP/1.0的向后兼容被定义 Trailer 报文主体后加的首部字段 ,可用在分块编码时 Transfer-Encoding 指定报文主体的传输编码格式 Upgrade 检测协议是否可使用更高版本,(在使用该字段时要额外添加 Connection:Upgrade字段) Via 追踪客户端和服务器之前请求和响应的传输路径,(所有代理服务器的信息) Warning 各种错误警告

请求首部字段列表

请求首部字段名 说明 Accept 通知服务器用户代理可处理的媒体类型以及优先级 Accept-Charset 通知服务器用户代理支持的字符集以及字符集的优先顺序 Accept-Encoding 告知服务器用户代理支持的内容编码以及内容编码的优先顺序 Accept-Language 告知服务器用户代理能够处理的自然语言以及自然语言的优先级 Authorization 用来告知服务器用户代理的认证信息 Expet 期待服务器出现某种待定行为 From 告知服务器用户代理的电子邮箱地址 Host 请求资源所处计算机的主机名和端口号 If-Match 告知服务器匹配资源所用的实体标记值 If-Modified-Since 告知服务器字段值时间之后有更新资源,则获取 If-None-Match 和If-Match相反 If-Range 资源未更新时发送实体Bety的范围请求 If-Unmodified-Since 告知服务器字段之间之后未更新资源,则获取 Max-Forwards 以十进制的形式指定可经过的服务器的最大数目 Proxy-Authorization 代理服务器要求客户端的认证信息 Pange 只需要获取部分资源的请求告知服务器的资源指定范围 Referer 告知服务器请求的原始资源的URI TE 告知服务器客户端能处理的编码格式以及相对优先级 User-Agent Http客户端的信息,如果请求经过代理也可能会添加代理服务器的信息

注:形如If-xxx这样的请求字段称为条件请求,服务器一般接收到附带条件请求的URL,只有判断条件成立后才会执行请求


响应字段首部

响应首部字段名 说明 Accept-Range 用来告知客户端服务器是否能处理范围请求,可以指定为betys,反之指定为none Age 返回资源创建到这次请求所经过的时间,单位为s ETage 服务器将资源以字符串的形式作唯一标识ETage Location 告知服务器用户代理能够处理的自然语言以及自然语言的优先级 Authorization 用来告知服务器用户代理的认证信息(属客户端与代理之间的通信) Retry-After 告知客户端多久之后再次访问 Server 告知客户端当前服务器安装的HTTP服务器应用程序的信息 Vary 代理服务器需要缓存的管理信息 WWW-Authenticate 服务器对对客户端的认证信息

实体首部字段

实体首部字段名 说明 Allow 通知客户端能支持的HTTP的所有方法 Content-Encoding 通知客户端服务器对实体的主体的编码方式 Content-Language 通知客户端实体主体的自然语言 Content-Length 实体主体的大小 Content-Location 表示报文返回资源的原始URI Content-MD5 客户端对接收到的报文主体执行相同的MD5算法,然后与字段中的值进行比较。(目的检测传输过程实体主体是否保持完整) Content-Range 实体主体返回的是资源的那部分位置范围 Content-Type 实体主体的媒体类型 Expires 告知客户端资源的有效截止日期 Last-Modified 告知客户端资源的最后修改日期
原创粉丝点击