HTTP 常见状态码

2026-06-01 98 0

常见状态码+易混区别+真实场景举例,专业好记,直接背✅

HTTP状态码5大类+高频码HTTP状态码5大类+高频码示意图


一、状态码分类

  • 1xx:中间响应,请求处理中
  • 2xx:成功
  • 3xx:重定向/缓存
  • 4xx:客户端错误
  • 5xx:服务端错误

二、高频状态码 + 解释 + 例子

✅ 2xx 成功

  • 200:请求成功,正常返回
    例:打开首页、查询列表
  • 201:资源创建成功
    例:注册账号、新建订单
  • 204:成功,但无返回体
    例:埋点上报、退出登录

✅ 3xx 重定向/缓存

  • 301:永久重定向
    例:旧域名永久迁移到新域名
  • 302:临时重定向
    例:未支付订单临时跳转到支付页
  • 304:资源未修改,使用缓存
    例:第二次打开网页,图片/JS不重新下载

✅ 4xx 客户端错误

  • 400:请求参数错误
    例:手机号格式不对、少传必传字段
  • 401:未登录/Token过期
    例:未登录就访问个人中心
  • 403:权限不足
    例:普通用户访问管理员后台
  • 404:资源不存在
    例:访问错误接口、删除后的文件
  • 405:请求方法错误
    例:接口只支持POST,却用GET访问
  • 429:请求频率超限
    例:1秒内刷接口100次被限流

✅ 5xx 服务端错误

  • 500:服务器代码异常
    例:空指针、数据库报错
  • 502:网关错误
    例:后端服务挂了、没启动
  • 503:服务过载/维护
    例:秒杀高峰期、服务器维护中
  • 504:网关超时
    例:查询数据太慢,超过超时时间

三、易混状态码对比(面试必考)

1. 301 vs 302

  • 301 永久:旧地址废弃,浏览器会记住
  • 302 临时:临时跳转,下次仍访问原地址

2. 302 vs 304

  • 302:跳转到新地址
  • 304:不跳转,直接用本地缓存

3. 401 vs 403(高频!)

  • 401:不知道你是谁 → 请登录
  • 403:知道你是谁,但无权访问

4. 200 vs 204

  • 200:成功+返回数据
  • 204:成功+不返回任何数据

5. 502 vs 504

  • 502:后端服务完全挂了,连不上
  • 504:能连上,但执行超时

四、深挖三层:排查思路

  1. 1. 4xx 一定是客户端问题
    参数、Token、权限、地址、请求方法错误
  2. 2. 5xx 一定是服务端问题
    代码Bug、服务宕机、超时、数据库挂了
  3. 3. 304 不是报错,是缓存优化
    正常现象,提升加载速度

五、10秒速记

200正常 201创建 204无内容
301永久 302临时 304缓存
400参数 401未登 403无权 404不存在
500异常 502挂了 504超时

相关文章

RabbitMQ 核心组件
什么是跨域?前端3种解决方法
什么是BFC?触发条件+应用场景
HTML语义化标签|好处+用法
TCP三次握手+四次挥手
HTTP&HTTPS 核心区别

发布评论