🧰 UtlKit

HTTP 状态码怎么查: 62 个代码, 五类分色徽章, 404 到 504, 搜索与类过滤全在浏览器

5 个分类 62 行, 颜色徽章, 对代码, 名称, 描述做大小写不敏感搜索, 可开关的分类过滤, 以及 Showing 8 of 62 式计数器, 全部由打包在 bundle 里的静态表渲染.

HTTP 状态码速查表是一张本地查找表, 不是请求工具: 全部 62 行打包在页面 bundle 里, 每行把三位数字与颜色徽章, 名称, 一行描述放在一起, 搜索框与 5 个分类按钮都在浏览器内过滤这张表, 没有任何网络往返, 打开 HTTP 状态码速查表 就能直接输入.

62 行与五个分类

表格把 62 行分成 5 个分类, 行数分别是 4, 10, 8, 29, 11: Informational 蓝, Success 绿, Redirection 黄, Client Error 橙, Server Error 红. 每行打印代码, 本地化名称, 分类标签与一行描述, 名称与描述有全部 7 种语言翻译, 同一行在不同语言下读各自的版本. 行描述的是状态行而不是载荷: 当 2xx 响应带 JSON 载荷时, 用 JSON Formatter 查看结构.

搜索框怎么匹配

搜索对三个字段做大小写不敏感的子串匹配: 代码数字, 名称, 描述. 输入 40 恰好返回以 40 开头的 10 行, 因为表里没有别的代码含这个数字对; 输入 gateway 恰好返回 2 行, 502 Bad Gateway 与 504 Gateway Timeout, 都通过名称命中; 输入 404 则把全表缩到 1 行. 描述里的词同样参与匹配, 所以搜索能命中名称里从不出现的词.

分类过滤与搜索怎么叠加

5 个分类按钮是第二个条件, 与搜索框同时生效: 行必须满足两者才显示. 点已选中的分类按钮会取消选择, All 重置回全表. gateway 加 4xx 得到 0 行, 因为两个 gateway 行都是 5xx, 页面打印空态 "No matching status codes", 底部计数 "Showing 0 of 62". 底部计数也是读过滤结果的捷径: 输入 webdav 命中 8 行散在 4 个分类, 计数器显示 Showing 8 of 62, 不用读行也能确认范围.

最常查的几行

5 行占掉大部分查询. 404 Not Found 说资源不存在; 502 Bad Gateway 与 504 Gateway Timeout 都指向上游服务器, 一个回了无效响应, 一个迟迟不应答; 429 Too Many Requests 是限流生效; 401 Unauthorized 表示需要认证. 204 No Content 是安静的成功, 请求被接受但没有内容返回. 重定向的差异在描述里: 301 Moved Permanently 说资源搬到新 URL, 308 Permanent Redirect 补充说客户端必须用相同方法重发请求. 表里还留着 418, 即 RFC 2324 彩蛋规范里的茶壶行, 在橙色 4xx 区.

从状态行到响应体

状态码只是响应的一行, 之后的内容不在这张表范围内. 200 的响应体可以是 JSON, HTML 或二进制, 502 的响应体常是上游的纯文本错误页, 所以读代码只知道哪层失败, 不知道载荷说什么. 速查表本身不发请求, 离真实流量最近的是你围绕它构造的测试 URL: 当 URL 的查询值含空格, 与号或 Unicode 时, 用 URL Encoder 做百分号编码, 发出去之前请求行就是合法的.

这张表不是什么

它不是检测器: 不发请求, 不抓实时响应头, 不解析服务器日志. 它是 62 行的案头参考, 其余功能一键可达. 401 带 token 时, 用 JWT Decoder 打开 token 看哪个声明失败; 要比对摘要判断载荷是否变化, 用 Hash Generator 各算一遍; 要从访问日志里抽出状态码, 先用 Regex Tester 匹配模式. 触发媒体类型错误的 Content-Type, 在 Mime Types 指南 里找正确的值; 错误体是 HTML 想要可读时, Format HTML 指南 给出格式化方法.

相关工具

常见问题

速查表会调用 API 或把搜索词发到任何地方吗?

不会: 全部 62 行打包在客户端 bundle 里, 搜索与分类过滤是对那个静态数组的内存过滤, 唯一能到页面外的控件是可选的反馈按钮, 那是你主动点的.

为什么 4xx 分类列 29 行而 1xx 只列 4 行?

因为页面打印的是它实际包含的代码: 1xx 有 100 到 103, 2xx 是 200 到 208 加 226, 3xx 覆盖 300 到 305 加 307 与 308, 4xx 覆盖 400 到 418, 421 到 426, 428, 429, 431 与 451, 5xx 覆盖 500 到 508 加 510 与 511; 419, 420, 427, 430 段与 440 段这些空缺是未分配或保留的编号, 干脆不出行.

输入 gateway 怎么恰好找到 2 行?

因为名称匹配是大小写不敏感的子串测试, 502 Bad Gateway 与 504 Gateway Timeout 的名称都含 gateway 这个词; 描述字段同样参与搜索, 所以 webdav 这样的词能命中 8 行, 它们的描述提到它而名称从不提.

代码 418 是什么, 为什么表里留着它?

它是茶壶行: RFC 2324 规范定义的彩蛋, 归在 4 分类, 橙色徽章, 之所以留着, 是因为表镜像的是规范预留的完整代码清单, 而不只是生产流量里会出现的代码.

描述会说明重定向是否保留请求方法吗?

会, 对永久这一对: 308 行补充说客户端必须用相同方法重发请求, 而 301 行只说资源搬到了新 URL; 临时这一对 302 与 303 用同样的单行风格, 所以保留方法与不保留方法的重定向之间的实际差异写在表里, 不是写在脚注里.

相关文章