Yasin

Yasin

http状态码

HTTP 状态码

五大分类

范围 类别 含义
1xx 信息 请求已收到,处理中
2xx 成功 请求成功
3xx 重定向 需要进一步操作
4xx 客户端错误 请求有问题
5xx 服务端错误 服务器出错

常用状态码

2xx 成功

含义 场景
200 OK 请求成功 GET/POST 正常响应
201 Created 创建成功 POST 创建资源后返回
204 No Content 成功但无返回体 DELETE 成功后

3xx 重定向

含义 场景
301 Moved Permanently 永久重定向 域名迁移,SEO 传递权重
302 Found 临时重定向 登录后跳转、A/B 测试
304 Not Modified 未修改,用缓存 浏览器缓存命中

4xx 客户端错误

含义 场景
400 Bad Request 请求参数错误 参数缺失/格式错误
401 Unauthorized 未认证 未登录/Token 失效
403 Forbidden 无权限 已登录但无访问权
404 Not Found 资源不存在 路径错误
405 Method Not Allowed 方法不允许 用 GET 请求了只支持 POST 的接口
409 Conflict 冲突 用户名已存在、重复提交
422 Unprocessable Entity 参数语义错误 格式对但业务校验失败
429 Too Many Requests 请求过多 触发限流

5xx 服务端错误

含义 场景
500 Internal Server Error 服务器内部错误 代码抛异常、未捕获错误
502 Bad Gateway 网关错误 Nginx 转发失败,上游挂了
503 Service Unavailable 服务不可用 服务器过载或维护中
504 Gateway Timeout 网关超时 上游响应超时

容易混淆的几组

401 vs 403
  401 → "你是谁?"(没有身份,需要登录)
  403 → "我知道你是谁,但你不能进"(无权限)

301 vs 302
  301 → 永久搬家,浏览器/搜索引擎会更新记录
  302 → 临时借道,下次还来这个地址

500 vs 502
  500 → 应用自己崩了(代码错误)
  502 → 反向代理访问不到后端(部署问题)