当前位置: 首页 > news >正文

HTTP状态码完整梳理及适用场景

HTTP 状态码是服务器在响应客户端请求时返回的标准化代码,用于表示请求的处理状态。它们分为五类,以三位数字的第一位区分。以下是常见的 HTTP 状态码及其含义:

1xx(信息响应)

  • 100 Continue:客户端应继续发送请求的剩余部分(已发送部分被服务器接受)。
  • 101 Switching Protocols:服务器同意切换协议(如从 HTTP 升级到 WebSocket)。
  • 102 Processing:服务器已接收并正在处理请求,但尚未完成(用于长时间操作)。

2xx(成功)

  • 200 OK:请求成功,响应中包含请求的数据(如 GET 或 POST)。
  • 201 Created:资源已成功创建(常见于 POST 或 PUT 请求后)。
  • 202 Accepted:请求已接收,但处理尚未完成(异步操作)。
  • 204 No Content:请求成功,但响应中无返回内容(如 DELETE 请求后)。
  • 206 Partial Content:服务器返回部分内容(用于分块下载或断点续传)。

3xx(重定向)

  • 301 Moved Permanently:资源已永久移动到新 URL(浏览器会缓存此重定向)。
  • 302 Found:资源临时移动到新 URL(浏览器不会缓存,可能重复请求原 URL)。
  • 304 Not Modified:资源未修改,客户端可使用缓存版本(需配合 If-Modified-Since 等头使用)。
  • 307 Temporary Redirect:临时重定向,要求客户端保持原请求方法(如 POST 请求)。
  • 308 Permanent Redirect:永久重定向,要求客户端保持原请求方法。

4xx(客户端错误)

  • 400 Bad Request:请求格式错误(如参数缺失或语法错误)。
  • 401 Unauthorized:需要身份验证(如未提供有效 Token 或 Cookie)。
  • 403 Forbidden:服务器拒绝请求(权限不足,即使身份验证通过)。
  • 404 Not Found:请求的资源不存在。
  • 405 Method Not Allowed:请求方法不被允许(如用 GET 访问只支持 POST 的接口)。
  • 408 Request Timeout:服务器等待请求超时(客户端发送请求过慢)。
  • 409 Conflict:请求与服务器当前状态冲突(如重复创建资源)。
  • 429 Too Many Requests:客户端请求过于频繁(触发限流机制)。

5xx(服务器错误)

  • 500 Internal Server Error:服务器内部错误(通用错误,无具体信息)。
  • 501 Not Implemented:服务器不支持请求的功能(如未实现的 HTTP 方法)。
  • 502 Bad Gateway:网关或代理服务器从上游服务器收到无效响应。
  • 503 Service Unavailable:服务器暂时不可用(如维护或过载)。
  • 504 Gateway Timeout:网关或代理服务器等待上游服务器响应超时。
  • 505 HTTP Version Not Supported:服务器不支持请求的 HTTP 协议版本。

常见应用场景

  • 调试接口:遇到 4xx 时检查客户端请求格式或权限;遇到 5xx 时联系服务端排查。
  • SEO 优化:使用 301 而非 302 传递页面权重,避免 404 影响用户体验。
  • 缓存控制:利用 304 减少重复数据传输,提升性能。
  • 限流策略:通过 429 告知客户端调整请求频率。

相关文章:

  • 报表控件stimulsoft操作:使用 CDN 服务部署 Stimulsoft 组件
  • 第15届 蓝桥杯 C++编程青少组中/高级选拔赛 202401 真题答案及解析
  • [250222] Kimi Latest 模型发布:尝鲜最新特性与追求稳定性的平衡 | SQLPage v0.33 发布
  • QT闲记-工具栏
  • nginx反向代理以及负载均衡(常见案例)
  • 容器和虚拟机选择对比
  • windows的CMD命令提示符
  • 【C语言】第六期——数组
  • 进程间通信(上)
  • 0221作业
  • leetcode 题目解析 第3题 无重复字符的最长子串
  • go 环境准备
  • cadence报错解决1
  • 光明谷推出AT指令版本的蓝牙音箱SOC 开启便捷智能音频开发新体验
  • at32f403a rt thread led基础bsp工程测试
  • 黑神话悟空火焰山攻略来了
  • 041集——封装之:新建图层(CAD—C#二次开发入门)
  • 动态订阅kafka mq实现(消费者组动态上下线)
  • 代码随想录-训练营-day35
  • 基于ffmpeg+openGL ES实现的视频编辑工具-添加转场(九)
  • 试点首发进口消费品检验便利化措施,上海海关与上海商务委发文
  • 申论|空间更新结合“青银共生”,助力青年发展型城区建设
  • 党建评:对违规宴饮等问题要坚决露头就打
  • 牛市早报|4月新增社融1.16万亿,降准今日正式落地
  • 人民日报民生观:转人工客服,怎么这么难?
  • 马上评|“为偶像正名”的正确做法是什么