解析网络通讯协议,http协议报文头部解析

本文详细介绍了HTTP协议的报文头部,包括通用首部、请求首部、响应首部和实体首部,以及HTTP响应状态码的重要性。HTTP首部包含名/值对,提供客户端和服务器处理请求和响应所需信息。常见的状态码如200、404、500,用于指示请求的成功或失败情况。
摘要由CSDN通过智能技术生成

HTTP协议的请求和响应报文中必定包含HTTP报文头部,也称为首部。首部内容分别为客户端和服务器处理请求和响应提供所需要的信息。本质上来说,首部包含一些名/值对的数值,类似于键值对。单个HTTP首部字段可以有多个值,用逗号分隔.

 首部的分类:

  1. 通用首部:既可出现在请求报文中,也可出现在响应报文中。比如Date首部。
  2. 请求首部:请求报文才有的,描述请求数据和客户端特性。
  3. 响应首部:响应报文中的,描述服务端。
  4. 实体首部:描述是实体内容性质。
  5. 扩展首部:非标准的首部。

请求头:

响应头:

通用首部

通用首部是请求头和响应头、共有的,有Connection、Cache-Control、Date、Pragma、Trailer、Transfer-Encoding、Upgrade、Via、Warning。

首部字段名 作用说明 值说明
Connection

控制是否持久连接;

控制不再转发给代理的首部字段;

Connection:Keep-Alive HTTP 1.1之前版本默认是短连接,旧版本需要使用持久连接需要设置Keep-Alive属性值
Connection:close HTTP/1.1版本默认持久连接,如需中断连接发送close属性值
请求报文头部中的Cache-Control

规定缓存行为

用于请求头

Cache-Control:no-store 不缓存请求和响应的任何内容
no-cache 告知代理(中间)服务器不直使用缓存,要求直接向原服务器请求
max-age=[seconds] 告知服务器,客户端希望收到一个存在时间小于seconds秒的资源
max-stale(=[seconds]) 告知代理服务器,客户端希望收到超过缓存时间seconds秒的资源,没定义则任意时长
min-fresh=[seconds] 规定返回的资源在至少在seconds秒内被更新过
only-if-cached 只从缓存中获取资源,不到达原服务器
no-transform 规定服务器返回的实体数据是没有被转换(比如压缩)过的资源
响应报文头部中的Cache-Control

表示是否能缓存

用于响应头

Cache-Control:public 表示允许客户端缓存响应信息,并可以给其他用户使用

private[="user-name"]

仅供特定用户缓存,使用

no-cache

服务器返回的响应中包含no-cache指令,说明缓存服务器不会再对资源进行缓存。

no-store

不缓存请求或响应的任何内容
no-transf
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值