切换工具

HTTP 速查

HTTP 状态码与 MIME 类型速查表,按 2xx/4xx/5xx 着色,支持实时筛选与点击复制。

显示 62 / 62 · 点击行复制

状态码原因短语描述
100Continue已收到请求头,客户端可继续发送请求体。
101Switching Protocols服务器按 Upgrade 头切换协议。
102Processing请求处理中,尚无响应(WebDAV)。
103Early Hints在最终响应前下发预加载提示。
200OK请求成功。
201Created资源已成功创建。
202Accepted请求已接受,但处理尚未完成。
203Non-Authoritative Information返回的元信息来自副本而非源服务器。
204No Content请求成功,但无响应体。
205Reset Content请求成功,客户端应重置文档视图。
206Partial Content已返回部分内容(Range 请求)。
207Multi-Status为多个子请求返回多种状态(WebDAV)。
208Already Reported绑定成员已枚举,不再重复(WebDAV)。
226IM Used响应为实例操作的结果(Delta 编码)。
300Multiple Choices存在多个可选资源表述。
301Moved Permanently资源已永久移动到新地址。
302Found资源临时位于另一地址。
303See Other使用 GET 从另一地址获取资源。
304Not Modified资源未修改,可使用缓存。
305Use Proxy必须通过代理访问资源(已弃用)。
307Temporary Redirect临时重定向,保持原请求方法。
308Permanent Redirect永久重定向,保持原请求方法。
400Bad Request请求语法错误,服务器无法理解。
401Unauthorized需要身份认证或认证失败。
402Payment Required保留状态码,预留给付费场景。
403Forbidden已认证但无权限访问。
404Not Found未找到请求的资源。
405Method Not Allowed该资源不支持此请求方法。
406Not Acceptable没有符合 Accept 头的表述。
407Proxy Authentication Required需要先通过代理认证。
408Request Timeout服务器等待请求超时。
409Conflict请求与资源当前状态冲突。
410Gone资源已被永久删除。
411Length Required需提供 Content-Length 头。
412Precondition Failed请求的前置条件未满足。
413Payload Too Large请求体过大。
414URI Too Long请求 URI 过长。
415Unsupported Media Type不支持的媒体类型。
416Range Not Satisfiable请求的 Range 范围无法满足。
417Expectation Failed无法满足 Expect 头的期望。
418I'm a teapot玩笑状态码(RFC 2324,愚人节)。
421Misdirected Request请求被发往无法响应的服务器。
422Unprocessable Entity请求语义有误,无法处理(校验失败)。
423Locked资源被锁定(WebDAV)。
424Failed Dependency因依赖的请求失败而失败(WebDAV)。
425Too Early服务器不愿处理可能被重放的请求。
426Upgrade Required客户端需升级到其它协议。
428Precondition Required要求请求附带前置条件。
429Too Many Requests请求过于频繁,触发限流。
431Request Header Fields Too Large请求头字段过大。
451Unavailable For Legal Reasons因法律原因不可用。
500Internal Server Error服务器内部错误。
501Not Implemented服务器不支持该功能。
502Bad Gateway网关从上游收到无效响应。
503Service Unavailable服务暂不可用(过载或维护)。
504Gateway Timeout网关等待上游服务器超时。
505HTTP Version Not Supported不支持的 HTTP 版本。
506Variant Also Negotiates内容协商配置错误。
507Insufficient Storage服务器存储空间不足(WebDAV)。
508Loop Detected检测到无限循环(WebDAV)。
510Not Extended需要进一步的扩展才能完成请求。
511Network Authentication Required需通过网络认证才能访问。

使用说明

用途

HTTP 状态码速查工具,列出 1xx / 2xx / 3xx / 4xx / 5xx 全部状态码(100 Continue ... 511 Network Authentication Required),含官方含义、使用场景、何时返回、客户端如何处理。同时区分常用与冷门状态码、RESTful API 推荐用法、与浏览器行为关系。常用于 API 设计参考、排查接口报错、面试复习、HTTP 协议学习。所有数据本地存储无需联网。

操作步骤

  1. 左侧输入状态码(如 200 / 404)或按类目浏览
  2. 右侧显示官方定义 + 含义 + 何时返回
  3. 常用度标注:超高频(200 / 404 / 500)/ 常用(401 / 403 / 502)/ 冷门(418 / 451)
  4. RESTful 推荐用法:每个动词(GET / POST / PUT / DELETE)应该返回哪些状态码
  5. 客户端处理建议:前端遇到这个码应该怎么处理
  6. 相关 RFC 标准:RFC 7231 / 9110 等的引用
  7. 相似状态码对比:401 vs 403 / 301 vs 302 / 502 vs 504
  8. 一键复制状态码 + 描述

常见问题

401 和 403 有什么区别?
**401 Unauthorized**: **没登录或登录已失效**。客户端应该:跳转登录页,重新获取 token。**403 Forbidden**: **登录了但没权限**。客户端应该:显示"无权限"提示,不能通过重新登录解决。**实际命名误导**:401 应该叫 "Unauthenticated"(未认证),403 才是 Unauthorized(未授权)。
301 和 302 哪个用于永久跳转?
**301 Moved Permanently**: 永久重定向,**浏览器会缓存**新地址(下次直接访问新地址不再走旧地址)。**302 Found**: 临时重定向,每次都走旧地址再跳新地址。**SEO 影响**: 301 把旧 URL 的 SEO 权重传递给新 URL,302 不传。**何时用**:301 用于域名换了 / 永久搬家;302 用于 A/B 测试 / 临时维护页。
502 和 504 区别?
**502 Bad Gateway**: 上游服务器返回了无效响应(如服务挂了 / 协议错误)。Nginx 后面的 PHP-FPM 挂了就 502。**504 Gateway Timeout**: 上游服务器超时未返回。**实际**: 502 通常是上游进程问题(重启服务),504 是上游慢(看慢查询 / 网络)。
POST 创建资源应该返回 200 还是 201?
**RESTful 推荐 201 Created**(明确表达"创建成功"),同时返回 Location 头指向新资源 URI。**返回 200** 也常见("成功但不强调创建"语义),多数 API 也接受。**完全 RESTful 项目用 201**,业务为主项目 200 / 201 都行(保持团队一致即可)。
为什么有的 API 全返 200,错误信息放在 body?
**这种是反 RESTful 设计**(前端要解析 body 才知道是不是错)。**支持理由**: 1) 浏览器对 4xx/5xx 的处理特殊(部分场景不进 success 回调);2) 国内移动端历史习惯;3) 错误码丰富,HTTP 状态码不够用。**RESTful 反对**: HTTP 状态码就是为表达成功 / 失败设计的,应该用上。**实际**: 看团队 / 业务,没绝对对错。但 RESTful 设计的项目接入第三方更顺畅。

应用场景

  • API 设计:决定接口失败时返回哪个状态码
  • 排查接口报错:API 返回 5xx 看是什么含义
  • 前端错误处理:根据状态码决定提示用户什么
  • 面试复习:HTTP 协议常考状态码
  • 教学:给新人讲 HTTP 状态码区别

适用场景

API 设计、接口排查、前端错误处理、面试复习、HTTP 教学。后端、前端、QA、技术支持、面试者常用。常用度标注、RESTful 推荐、相似码对比、客户端处理建议是关键差异点。