HTTP状态码查询 - HTTP状态码大全及含义(1xx~5xx速查与排查)
🌟 为什么你需要一个”状态码查询”工具
接口报错了,控制台弹出一个冷冰冰的数字——404、403、502、504……你知道它出问题了,但”到底错在客户端还是服务端""是权限问题还是资源不存在”往往一时分不清。
这就是状态码的价值:它是服务器对请求处理结果的简短数字表示,读懂了它,就找到了排查方向。星点 HTTP 状态码查询 内置了 1xx~5xx 常用状态码的知识库,输入数字或含义即可查看每个状态码的含义、常见原因与排查建议,未收录的状态码还能按首位归类给出通用说明。
先记牢:首位数字决定了”谁的问题”
| 首位 | 分类 | 含义 | 责任方 |
|---|---|---|---|
| 1xx | 信息响应 | 请求已收到,继续处理 | 中间态 |
| 2xx | 成功 | 请求成功被处理 | 无 |
| 3xx | 重定向 | 需要进一步操作 | 客户端配合 |
| 4xx | 客户端错误 | 请求本身有问题 | 客户端 |
| 5xx | 服务器错误 | 服务器处理失败 | 服务端 |
记住这张表,你就能在拿到任何状态码的第一时间判断排查方向,这也是排错的第一步。
🚀 怎么用(详细步骤)
- 打开 HTTP 状态码查询;
- 在搜索框输入状态码(如 404)或含义(如 Not Found);
- 点击下方状态码或搜索结果查看详情;
- 阅读含义、常见原因与排查建议。
工具还提供了相关状态码跳转,比如查 301 时会联动 302/307/308,帮你把容易混淆的重定向状态码一次看清。
⚔️ 核心对比:4xx vs 5xx,一眼定位责任方
这是排查接口问题最常用的一个判断:
| 维度 | 4xx 客户端错误 | 5xx 服务器错误 |
|---|---|---|
| 问题在哪 | 请求本身有问题 | 服务器处理出错 |
| 常见例子 | 400、401、403、404、405、422 | 500、502、503、504 |
| 前端能做什么 | 检查 URL、参数、权限、请求体 | 一般只能重试或上报 |
| 后端能做什么 | 给出更明确的错误提示 | 查日志、修 bug、扩容 |
经验法则:看到 4xx,先怀疑自己发的请求不对;看到 5xx,先怀疑服务端挂了或网关配置有问题。
404 vs 403:一个是”找不到”,一个是”不让你看”
这是最容易混淆的一对:
| 维度 | 404 Not Found | 403 Forbidden |
|---|---|---|
| 含义 | 服务器找不到资源 | 服务器理解请求但拒绝执行 |
| 典型原因 | URL 拼错、资源不存在、路由未定义 | 权限不足、未授权、IP 被封 |
| 举例 | 访问了不存在的文章页 | 访问了无权限的管理后台 |
一句话记住:404 是”东西不在那里”,403 是”东西在,但不给你”。
502 vs 504:一个是”上游回错了”,一个是”上游没回”
这对是网关/反向代理场景的高频状态码:
| 维度 | 502 Bad Gateway | 504 Gateway Timeout |
|---|---|---|
| 含义 | 网关从上游收到无效响应 | 网关等待上游响应超时 |
| 典型原因 | 上游服务崩溃、返回畸形数据、端口不通 | 上游处理太久、连接超时 |
| 排查方向 | 查上游服务是否存活、日志 | 查上游慢查询、超时配置 |
一句话记住:502 是”上游回了句听不懂的话”,504 是”上游一直没吭声”。
📚 1xx~5xx 全分类详解
1xx 信息响应:请求收到,继续处理
| 状态码 | 短语 | 说明 |
|---|---|---|
| 100 | Continue | 客户端可继续发送请求体 |
| 101 | Switching Protocols | 切换协议(如 WebSocket 升级) |
1xx 属于中间态,正常情况下浏览器会自动处理,开发者很少直接遇到。
2xx 成功:请求被正常处理
| 状态码 | 短语 | 说明 |
|---|---|---|
| 200 | OK | 请求成功 |
| 201 | Created | 资源创建成功 |
| 202 | Accepted | 已接受,异步处理中 |
| 204 | No Content | 成功但无返回体 |
看到 200 并不总意味着业务成功——有些接口在业务失败时也返回 200,只在响应体里放错误码,联调时要同时看响应体。
3xx 重定向:需要进一步操作
| 状态码 | 短语 | 说明 |
|---|---|---|
| 301 | Moved Permanently | 永久重定向,浏览器会缓存 |
| 302 | Found | 临时重定向 |
| 304 | Not Modified | 未修改,用本地缓存 |
| 307 | Temporary Redirect | 临时重定向,保持方法 |
| 308 | Permanent Redirect | 永久重定向,保持方法 |
301/302 与 307/308 的差异在”是否保持请求方法”:老式的 301/302 在某些场景下会把 POST 改成 GET,而 307/308 严格保持方法不变。SEO 场景下 301 常用来做域名跳转、HTTP 转 HTTPS。
4xx 客户端错误:请求本身有问题
| 状态码 | 短语 | 说明 |
|---|---|---|
| 400 | Bad Request | 请求格式错误 |
| 401 | Unauthorized | 未认证或凭证无效 |
| 403 | Forbidden | 已认证但无权限 |
| 404 | Not Found | 资源不存在 |
| 405 | Method Not Allowed | 方法不被允许 |
| 409 | Conflict | 资源冲突(如重复创建) |
| 422 | Unprocessable Entity | 参数校验失败 |
| 429 | Too Many Requests | 请求过于频繁,触发限流 |
400 和 422 的区别值得注意:400 偏向”请求本身格式不对”,422 偏向”格式对但业务校验不过”,很多现代 API 框架用 422 表示参数校验失败。
5xx 服务器错误:服务器处理出错
| 状态码 | 短语 | 说明 |
|---|---|---|
| 500 | Internal Server Error | 服务器内部错误(未捕获异常) |
| 501 | Not Implemented | 服务器不支持该功能 |
| 502 | Bad Gateway | 网关从上游收到无效响应 |
| 503 | Service Unavailable | 服务不可用(过载/维护) |
| 504 | Gateway Timeout | 网关等待上游超时 |
500 是”万能错误码”,往往表示后端抛了未捕获异常;503 通常伴随”临时不可用”,常用于服务降级和限流兜底。
📚 常用状态码速查表
| 状态码 | 短语 | 一句话说明 |
|---|---|---|
| 200 | OK | 请求成功 |
| 201 | Created | 创建成功 |
| 204 | No Content | 成功但无返回体 |
| 301 | Moved Permanently | 永久重定向 |
| 302 | Found | 临时重定向 |
| 304 | Not Modified | 未修改,用缓存 |
| 400 | Bad Request | 请求格式错误 |
| 401 | Unauthorized | 未认证/凭证无效 |
| 403 | Forbidden | 已认证但无权限 |
| 404 | Not Found | 资源不存在 |
| 405 | Method Not Allowed | 方法不允许 |
| 422 | Unprocessable Entity | 参数校验失败 |
| 429 | Too Many Requests | 请求过于频繁 |
| 500 | Internal Server Error | 服务器内部错误 |
| 502 | Bad Gateway | 网关收到无效响应 |
| 503 | Service Unavailable | 服务不可用 |
| 504 | Gateway Timeout | 网关等待超时 |
💡 三个排查实战
排查一:接口一直 404
- 检查 URL 是否拼错、路径大小写是否一致;
- 检查路由是否真的定义了这个路径;
- 用 HTTP 请求测试器 原样重发,排除前端拼接问题。
排查二:登录后仍 403
- 确认是否真的登录成功(Token 是否有效);
- 确认该账号是否有对应资源的权限;
- 检查 Token 是否已过期导致鉴权中间件拒绝。
排查三:线上偶发 502/504
- 先看是偶发还是必现;
- 查网关(Nginx 等)日志与上游服务日志;
- 502 重点查上游服务是否崩溃、返回是否畸形;504 重点查上游是否有慢请求、超时配置是否过短。
🔧 常见问题(FAQ)
404 和 403 有什么区别?
404 表示服务器找不到资源(URL 错误、资源不存在);403 表示服务器理解请求但拒绝执行(权限不足)。未收录的状态码能查吗?
能。工具按状态码首位分类给出通用说明,例如 499 归为 4xx 客户端错误。502 和 504 的区别?
502 Bad Gateway 表示网关从上游收到无效响应;504 Gateway Timeout 表示网关等待上游响应超时。401 和 403 有什么区别?
401 是"未认证"(你是谁都不知道,凭证缺失或无效);403 是"已认证但无权限"(知道你是谁,但不允许你做这件事)。304 是错误吗?
不是。304 Not Modified 表示资源未变化,客户端可使用本地缓存,是正常且能节省带宽的响应。状态码查到了但还是不知道怎么办?
结合工具的排查建议,配合 [HTTP 请求测试器](https://www.xingdian.net/app/http/request/) 复现请求、抓取响应头进一步定位。💬 总结
状态码是 HTTP 协议的”诊断语言”,读懂 4xx 与 5xx 的边界、分清 404/403、502/504,排错就快了一大半。需要动手验证时,用 HTTP 请求测试器 原样重发;需要看清响应头细节时,用 HTTP Header 解析器。
立即体验:访问 HTTP 状态码查询
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!