温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

HTTP状态码代表什么

发布时间:2026-07-15 22:08:31 来源:亿速云 阅读:107 作者:小樊 栏目:编程语言

HTTP状态码(HTTP Status Code)是服务器响应客户端请求时返回的三位数字代码,用于表示请求的处理结果。状态码由 RFC 7231 等规范定义,分为五大类,每类有特定的含义。以下是详细分类和常见状态码的解释:


一、状态码分类

状态码的第一位数字表示响应类别:

类别 范围 含义
1xx 100–199 信息性响应:请求已被接收,继续处理
2xx 200–299 成功:请求已成功被服务器接收、理解并处理
3xx 300–399 重定向:需要进一步操作以完成请求
4xx 400–499 客户端错误:请求有错误,服务器无法处理
5xx 500–599 服务器错误:服务器在处理请求时发生错误

二、常见状态码详解

1. 1xx(信息性响应)

  • 100 Continue:客户端应继续发送请求主体(用于大文件上传等场景)。
  • 101 Switching Protocols:服务器同意切换协议(如从 HTTP 切换到 WebSocket)。

2. 2xx(成功)

  • 200 OK:请求成功,响应中包含请求的结果(最常见)。
  • 201 Created:请求成功,并且服务器创建了新的资源(如 POST 创建数据)。
  • 202 Accepted:请求已接受,但尚未处理完成(常用于异步操作)。
  • 204 No Content:请求成功,但响应无内容(如 DELETE 成功)。

3. 3xx(重定向)

  • 301 Moved Permanently:资源已永久移动到新 URL,搜索引擎会更新链接。
  • 302 Found:资源临时移动到新 URL(旧标准,部分客户端可能误用为临时重定向)。
  • 303 See Other:建议客户端用 GET 方法访问另一个 URL(常用于 POST 后重定向)。
  • 304 Not Modified:资源未修改,客户端可使用本地缓存(与缓存机制相关)。
  • 307 Temporary Redirect:临时重定向,要求客户端保持原请求方法(如 POST 仍为 POST)。
  • 308 Permanent Redirect:永久重定向,且要求保持原请求方法。

4. 4xx(客户端错误)

  • 400 Bad Request:请求语法错误或参数无效。
  • 401 Unauthorized:请求需要用户身份认证(如未登录)。
  • 403 Forbidden:服务器理解请求,但拒绝执行(权限不足)。
  • 404 Not Found:请求的资源不存在。
  • 405 Method Not Allowed:请求方法(如 POST)不被允许。
  • 409 Conflict:请求与服务器当前状态冲突(如数据版本冲突)。
  • 413 Payload Too Large:请求实体过大(如上传文件超限)。
  • 429 Too Many Requests:客户端发送请求过多(限流)。

5. 5xx(服务器错误)

  • 500 Internal Server Error:服务器内部错误(通用错误,如代码异常)。
  • 501 Not Implemented:服务器不支持请求的功能(如未实现的 HTTP 方法)。
  • 502 Bad Gateway:作为网关的服务器收到无效响应(如反向代理后端故障)。
  • 503 Service Unavailable:服务器暂时无法处理请求(如过载或维护)。
  • 504 Gateway Timeout:网关服务器等待上游服务器响应超时。

三、状态码使用场景示例

  1. API 开发
    • 成功创建资源返回 201 Created
    • 参数错误返回 400 Bad Request
    • 未授权访问返回 401 Unauthorized
  2. 网页访问
    • 页面不存在返回 404 Not Found
    • 服务器故障返回 500 Internal Server Error
  3. 缓存优化
    • 资源未修改时返回 304 Not Modified,减少传输。

四、注意事项

  • 状态码是 约定而非强制,部分服务可能误用(如用 200 OK 返回错误信息)。
  • 实际开发中需结合 响应体(Response Body) 获取详细错误信息。
  • 浏览器和爬虫会根据重定向状态码(如 301/302)自动跳转。

五、记忆技巧

  • 2xx:好事,请求成功。
  • 3xx:请换个地方访问。
  • 4xx:你(客户端)有问题。
  • 5xx:服务器出问题了。

如果需要更深入的协议细节(如缓存、认证机制),可进一步查阅 HTTP 规范或具体框架文档。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI