xDocxDoc
AI
前端
后端
iOS
Android
Flutter
AI
前端
后端
iOS
Android
Flutter
  • HTTP 状态码全解

HTTP 状态码全解

1xx - 信息性状态码

表示请求已被接收,需要继续处理。

状态码英文名称中文描述
100Continue继续。客户端应继续其请求,服务器已收到请求头。
101Switching Protocols切换协议。服务器根据客户端请求切换协议(如升级到WebSocket)。
102Processing (WebDAV)处理中。服务器已接收并正在处理请求,但无响应可用。

2xx - 成功状态码

表示请求已成功被服务器接收、理解并处理。

状态码英文名称中文描述
200OK成功。请求已成功,返回了所请求的资源。
201Created已创建。请求成功且服务器创建了新的资源(常见于POST请求)。
202Accepted已接受。请求已接收,但尚未处理。
204No Content无内容。服务器成功处理,但未返回任何内容(常见于DELETE请求)。
206Partial Content部分内容。服务器成功处理了部分GET请求(用于断点续传或分块下载)。
203Non-Authoritative Info非授权信息。请求成功,但返回的元信息来自副本而非原始服务器。
205Reset Content重置内容。服务器处理成功,客户端应重置文档视图(如表单)。

3xx - 重定向状态码

表示需要客户端采取进一步的操作才能完成请求。

状态码英文名称中文描述
301Moved Permanently永久移动。请求的资源已永久移动到新URI,浏览器会缓存新地址。
302Found临时移动。请求的资源临时被移动,客户端应继续使用原有URI。
303See Other查看其它地址。请求的响应可以在另一个URI上找到(通常用于POST后的重定向)。
304Not Modified未修改。所请求的资源自上次访问后未修改,客户端可直接使用缓存版本。
307Temporary Redirect临时重定向。与302类似,但确保请求方法和消息主体不会发生变化。
308Permanent Redirect永久重定向。与301类似,但确保请求方法和消息主体不会发生变化。
300Multiple Choices多种选择。请求的资源有多个可选表示,客户端需自行选择。

4xx - 客户端错误状态码

表示客户端发送的请求有错误,影响了服务器的处理。

状态码英文名称中文描述
400Bad Request错误请求。请求存在语法错误,服务器无法理解。
401Unauthorized未授权。请求要求用户的身份认证(需提供有效凭证)。
403Forbidden禁止。服务器理解请求,但拒绝执行(通常因权限不足)。
404Not Found未找到。服务器无法根据客户端的请求找到资源。
405Method Not Allowed方法禁用。客户端请求中的方法(如GET, POST)被禁止在该资源上使用。
408Request Timeout请求超时。服务器等待客户端发送的请求时间过长。
409Conflict冲突。请求与服务器目标资源的当前状态相冲突(常见于资源更新)。
413Payload Too Large请求实体过大。请求的实体数据超过服务器能够处理的范围。
414URI Too LongURI过长。请求的URI(网址)长度超过了服务器能够解释的限制。
429Too Many Requests请求过多。客户端在给定时间内发送了过多请求,被服务器限流。

5xx - 服务器错误状态码

表示服务器在处理请求的过程中发生了错误。

状态码英文名称中文描述
500Internal Server Error服务器内部错误。服务器遇到意外情况,无法完成请求(通用错误)。
501Not Implemented尚未实施。服务器不支持请求的功能(如不支持PUT方法)。
502Bad Gateway错误网关。服务器作为网关或代理时,从上游服务器收到了无效响应。
503Service Unavailable服务不可用。服务器当前无法处理请求(由于超载、维护或临时停机)。
504Gateway Timeout网关超时。服务器作为网关或代理,未能及时从上游服务器获得响应。
505HTTP Version Not SupportedHTTP版本不受支持。服务器不支持请求所使用的HTTP协议版本。

💡 总结与应用场景

理解HTTP状态码有助于快速定位和解决问题。

  • 调试前端问题:遇到 4xx 错误,首先检查请求的URL、参数、方法和身份认证信息是否正确。
  • 排查后端问题:遇到 5xx 错误,表明问题出在服务器端,需要检查服务器日志、数据库连接、依赖服务或代码逻辑。
  • 优化用户体验:合理利用 3xx 重定向(如301利于SEO)和 304 缓存可以减少服务器压力并加快页面加载。
  • 系统设计:使用 429 状态码进行限流,保护系统免遭过量请求冲击。
最后更新: 2025/9/1 14:41