文章目录
- [一、2xx ------ 请求成功(Success)](#一、2xx —— 请求成功(Success))
- [二、3xx ------ 重定向(Redirection)](#二、3xx —— 重定向(Redirection))
- [三、4xx ------ 客户端错误(Client Error)](#三、4xx —— 客户端错误(Client Error))
- [四、5xx ------ 服务器错误(Server Error)](#四、5xx —— 服务器错误(Server Error))
- 五、状态码速查表(超实用)
- [六、前后端 & 实际开发建议](#六、前后端 & 实际开发建议)
HTTP 状态码由 3 位数字 组成,用来表示 服务器对客户端请求的处理结果 :
| 分类 | 范围 | 含义 |
|---|---|---|
| 2xx | 200--299 | ✅ 请求成功 |
| 3xx | 300--399 | 🔀 重定向 |
| 4xx | 400--499 | ❌ 客户端错误 |
| 5xx | 500--599 | 💥 服务器错误 |
一、2xx ------ 请求成功(Success)
只要看到 2xx,就说明请求"基本没问题"
常见状态码
| 状态码 | 名称 | 含义 | 常见场景 |
|---|---|---|---|
| 200 | OK | 请求成功 | GET 查询数据 |
| 201 | Created | 资源创建成功 | POST 新增数据 |
| 204 | No Content | 成功但无返回体 | DELETE 成功 |
示例
http
GET /users/1
→ 200 OK
http
POST /users
→ 201 Created
记忆技巧
2 = 成功(Success)
二、3xx ------ 重定向(Redirection)
服务器告诉你:资源在"别的地方"
常见状态码
| 状态码 | 名称 | 含义 | 场景 |
|---|---|---|---|
| 301 | Moved Permanently | 永久重定向 | 域名更换 |
| 302 | Found | 临时重定向 | 临时跳转 |
| 304 | Not Modified | 资源未修改 | 浏览器缓存 |
示例
http
GET /old-url
→ 301 Location: /new-url
记忆技巧
3 = 跳转(Redirect)
三、4xx ------ 客户端错误(Client Error)
大部分 4xx 都是"前端 / 调用方"的问题
常见状态码(重点必考)
| 状态码 | 名称 | 含义 | 典型原因 |
|---|---|---|---|
| 400 | Bad Request | 请求参数错误 | 参数缺失 / 格式错误 |
| 401 | Unauthorized | 未认证 | 未登录 |
| 403 | Forbidden | 无权限 | 登录但无权限 |
| 404 | Not Found | 资源不存在 | URL 错误 |
| 405 | Method Not Allowed | 方法不允许 | GET / POST 用错 |
经典对比
| 状态码 | 区别 |
|---|---|
| 401 vs 403 | 401:没登录;403:登录了但没权限 |
示例
http
GET /admin
→ 403 Forbidden
记忆技巧
4 = 客户端问题(Your Fault)
四、5xx ------ 服务器错误(Server Error)
请求是对的,但服务器"扛不住了"
常见状态码
| 状态码 | 名称 | 含义 | 场景 |
|---|---|---|---|
| 500 | Internal Server Error | 服务器内部异常 | 代码报错 |
| 502 | Bad Gateway | 网关错误 | Nginx → 服务异常 |
| 503 | Service Unavailable | 服务不可用 | 服务宕机 |
| 504 | Gateway Timeout | 网关超时 | 请求超时 |
示例
http
GET /order
→ 500 Internal Server Error
记忆技巧
5 = 服务器背锅
五、状态码速查表(超实用)
| 系列 | 一句话总结 |
|---|---|
| 2xx | 请求成功 |
| 3xx | 去别的地方 |
| 4xx | 客户端错 |
| 5xx | 服务器炸了 |
六、前后端 & 实际开发建议
1️⃣ 后端返回规范(推荐)
json
{
"code": 200,
"message": "success",
"data": {}
}
- HTTP 状态码:给浏览器 / 网关用
- 业务 code:给前端业务判断用
2️⃣ REST 风格推荐
| 操作 | 状态码 |
|---|---|
| 查询成功 | 200 |
| 创建成功 | 201 |
| 删除成功 | 204 |
| 参数错误 | 400 |
| 未登录 | 401 |
| 无权限 | 403 |
| 服务器异常 | 500 |