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

HTTP 状态码笔记

一、什么是 HTTP 状态码

  • HTTP 状态码 是服务器对客户端请求的响应结果的简要描述,由三位数字组成。
  • 状态码由 响应首部 返回,格式示例:
HTTP/1.1 200 OK
  • 每个状态码属于一个特定的分类。

二、状态码分类概览

分类范围含义
1xx100–199信息性,表示请求已接收,继续处理
2xx200–299成功,表示请求已成功被服务器接收、理解并处理
3xx300–399重定向,需要进一步操作以完成请求
4xx400–499客户端错误,请求有语法错误或无法完成
5xx500–599服务器错误,服务器未能完成合法请求

三、常见状态码详解

1xx 信息性状态码

  • 100 Continue
    客户端应继续请求,服务器已收到请求头,等待请求体

  • 101 Switching Protocols
    服务器同意客户端协议切换请求

  • 102 Processing(WebDAV)
    服务器已接收并正在处理请求,但无响应可用


2xx 成功状态码

  • 200 OK
    请求成功,一般用于 GET 和 POST 请求

  • 201 Created
    请求成功并创建了新的资源,常用于 POST

  • 202 Accepted
    请求已接收,但尚未处理

  • 204 No Content
    请求成功,但响应体为空

  • 206 Partial Content
    部分内容(用于分块下载或断点续传)


3xx 重定向状态码

  • 301 Moved Permanently
    永久重定向,资源已永久移动到新位置

  • 302 Found(或 Moved Temporarily)
    临时重定向,资源临时被移动

  • 303 See Other
    请求的资源可通过其他 URI 获取,通常用于 POST 重定向

  • 304 Not Modified
    资源未修改,客户端可使用缓存

  • 307 Temporary Redirect
    临时重定向,方法不变

  • 308 Permanent Redirect
    永久重定向,方法不变


4xx 客户端错误状态码

  • 400 Bad Request
    请求语法错误,服务器无法理解

  • 401 Unauthorized
    未授权,需进行身份验证

  • 403 Forbidden
    服务器拒绝请求,权限不足

  • 404 Not Found
    请求资源不存在

  • 405 Method Not Allowed
    请求方法不被允许

  • 408 Request Timeout
    请求超时

  • 409 Conflict
    请求与资源当前状态冲突

  • 410 Gone
    资源已永久删除

  • 413 Payload Too Large
    请求实体过大

  • 429 Too Many Requests
    客户端发送的请求过多,被限流


5xx 服务器错误状态码

  • 500 Internal Server Error
    服务器内部错误,无法完成请求

  • 501 Not Implemented
    服务器不支持请求的功能

  • 502 Bad Gateway
    服务器作为网关/代理时收到无效响应

  • 503 Service Unavailable
    服务器当前无法处理请求(超载或维护)

  • 504 Gateway Timeout
    网关或代理超时

  • 505 HTTP Version Not Supported
    不支持的 HTTP 版本


四、常用状态码应用场景总结

状态码应用场景
200请求成功,正常返回数据
201成功创建资源(如创建用户)
204删除成功,无返回内容
301网站永久跳转
302页面临时跳转
304浏览器缓存命中
400参数错误,客户端问题
401用户未登录或认证失败
403没有权限
404资源不存在
500服务端代码错误
502反向代理无响应
503服务器维护、超载
504代理/网关超时

五、HTTP 状态码总结思维导图(文本版)

HTTP状态码
├── 1xx 信息
│   ├── 100 Continue
│   └── 101 Switching Protocols
├── 2xx 成功
│   ├── 200 OK
│   ├── 201 Created
│   ├── 202 Accepted
│   ├── 204 No Content
│   └── 206 Partial Content
├── 3xx 重定向
│   ├── 301 Moved Permanently
│   ├── 302 Found
│   ├── 303 See Other
│   ├── 304 Not Modified
│   └── 307 Temporary Redirect
├── 4xx 客户端错误
│   ├── 400 Bad Request
│   ├── 401 Unauthorized
│   ├── 403 Forbidden
│   ├── 404 Not Found
│   ├── 405 Method Not Allowed
│   └── 429 Too Many Requests
└── 5xx 服务器错误├── 500 Internal Server Error├── 502 Bad Gateway├── 503 Service Unavailable└── 504 Gateway Timeout

六、扩展阅读建议

  • MDN HTTP 状态码文档
  • RFC 7231 HTTP 规范
http://www.xdnf.cn/news/15562.html

相关文章:

  • 搭建Java环境
  • stack,queue,priority_queue的模拟实现及常用接口
  • 【原创】【图像算法】高精密电子仪器组装异常检测
  • 可获得的最大点数
  • AI搜索+GEO时代的营销策略更迭学习笔记
  • DIDCTF-陇剑杯
  • 在Anaconda Prompt中安装库【保姆教程】
  • 网络编程7.17
  • 线程(三) linux 同步
  • TASK01【datawhale组队学习】地瓜机器人具身智能概述
  • Leetcode 494. 目标和
  • [spring6: @EventListener @TransactionalEventListener ]-源码分析
  • 100201组件拆分_编辑器-react-仿低代码平台项目
  • .NET 8.0 使用 WebSocket
  • Spring之【BeanDefinition】
  • cuda编程笔记(8)--线程束warp
  • 有n棍棍子,棍子i的长度为ai,想要从中选出3根棍子组成周长尽可能长的三角形。请输出最大的周长,若无法组成三角形则输出0。
  • Java List 集合详解:从基础到实战,掌握 Java 列表操作全貌
  • 自定义 django 中间件
  • 深度学习基础 | Softmax 函数原理详解 + Python实现 + 数学公式
  • 前缀和题目:表现良好的最长时间段
  • Leetcode 03 java
  • CKS认证 | Day6 监控、审计和运行时安全 sysdig、falco、审计日志
  • vue3 自定义vant-calendar header/footer/maincontent
  • EXCEL VBA合并当前工作簿的所有工作表sheet
  • Java全栈面试实录:从电商支付到AIGC的深度技术挑战
  • 机器学习:数据清洗与预处理 | Python
  • 控制台输出的JAVA格斗小游戏-面向对象
  • CMake综合学习1: Cmake的模块化设计
  • 我爱学算法之—— 前缀和(下)