HTTP头解析
粘贴HTTP头,秒拆键值对
这个工具能做什么
从浏览器开发者工具的 Network 面板、curl -v 或 Charles、Fiddler、Wireshark 抓包里复制出来的 HTTP 头,通常是一大坨纯文本,一行一个字段、键和值挤在一起。字段一多(Set-Cookie、Cache-Control 加上若干自定义 X- 头),想对齐着看或从里面找某一个字段就很费劲。这个工具做的事很直接:把原始文本粘进来,按每行第一个冒号切成键值对,同时把开头的请求行或状态行单独识别出来。最后输出一份对齐的键值列表或 JSON,省去手动数冒号、对齐和逐行找字段的麻烦。这就是最基础的 header 解析,请求头解析和响应头解析都适用。
解析逻辑贴合 RFC 7230 对 HTTP headers 的定义:每个字段是「field-name: field-value」的形式,字段名里不允许出现冒号,所以按每行第一个冒号拆分是安全的——值里的冒号(Date 中的时间、URL 里的端口号)不会被误切。首行会做模式匹配:命中「方法 空格 请求目标 空格 HTTP 版本」就判为请求行(如 GET /path HTTP/1.1),命中「HTTP 版本 空格 状态码 空格 原因短语」就判为状态行(如 HTTP/1.1 200 OK)。其余每行取冒号后、去掉前导空格的部分作为值。字段名本身大小写不敏感,但工具通常按你输入的原样保留,方便逐字核对。
最常见的用法是排查接口和缓存问题。比如某个静态资源没走 CDN 缓存,把响应头粘进来对齐一看,Cache-Control、Age、X-Cache 几个字段的值一目了然,很快能判断是 miss 还是被 no-store 挡了。又比如联调时对方坚称「token 传了」,你把请求头解析成 JSON,直接确认 Authorization 或自定义头到底带没带、格式对不对。转成 JSON 后这份数据还能直接贴进代码或测试用例里当断言用。
几个边界情况值得注意:HTTP/2、HTTP/3 的伪头(如 :method、:authority)以冒号开头,按第一个冒号拆会得到空的键名,需要手动处理;早已废弃的折行续写(obsolete line folding)如果碰到,得自己把续行合并回上一行。同名头(典型是多个 Set-Cookie)在键值列表里会各自列出,但转成 JSON 对象时因键必须唯一,可能只保留一个,查 Cookie 时建议看列表视图。它只是纯文本解析工具,不会发起请求、也不校验字段值是否合法,全部解析在浏览器本地完成、不上传。
HTTP头解析是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“http头解析”、“请求头解析”、“响应头解析”,说的都是这个。
常见使用场景
- 排查静态资源为什么没命中 CDN 缓存
- 联调时确认请求头有没有带上 Authorization
- 把抓包复制的响应头拆成 JSON 贴进测试用例
- 对比两次请求的 Cache-Control 和 Cookie 差异
- 从一大坨响应头里快速定位某个自定义 X- 头的值
使用方法
- 把内容粘贴到输入框(生成类工具直接设置选项)。
- 按需要选择选项,点操作按钮。
- 结果出现在下方,点「复制结果」即可带走。