HTTP响应状态码

1xx(信息性状态码)

表示服务器已接收请求,正在进一步处理,需要客户端继续等待或配合。

  • 100 Continue
    服务器已接收请求头,客户端可继续发送请求体(通常用于 POST/PUT 等带大量数据的请求,避免浪费带宽)。

  • 101 Switching Protocols
    服务器同意客户端的协议转换请求(如从 HTTP 切换到 WebSocket)。

2xx(成功状态码)

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

  • 200 OK
    请求成功,响应体包含请求的资源(最常见的成功状态码,如 GET 请求返回数据)。

  • 201 Created
    请求成功且服务器创建了新资源(如 POST 提交表单后创建新用户,响应头 Location 通常指向新资源的 URL)。

  • 204 No Content
    请求成功,但响应体无内容(如 DELETE 请求删除资源后,无需返回数据)。

  • 206 Partial Content
    部分请求成功(用于断点续传或分片下载,客户端通过 Range 头指定获取的字节范围)。

3xx(重定向状态码)

表示请求需要客户端进一步操作才能完成(通常是跳转至其他 URL)。

  • 301 Moved Permanently
    资源已永久迁移到新 URL,客户端应更新书签或后续请求使用新 URL(浏览器会缓存该跳转)。

  • 302 Found
    资源临时迁移到新 URL,客户端应继续使用原 URL 发起后续请求(临时跳转,如登录后跳回原页面)。
    注:HTTP 1.1 中 303/307 更明确区分了 POST 跳转行为,302 可能被部分浏览器不当处理。

  • 303 See Other
    请求成功,客户端应使用 GET 方法访问新 URL(常用于 POST 提交后跳转到结果页,避免重复提交)。

  • 304 Not Modified
    资源未修改(客户端缓存的版本与服务器一致),客户端可直接使用本地缓存(配合 If-Modified-SinceIf-None-Match 头使用,用于优化性能)。

  • 307 Temporary Redirect
    临时重定向,严格保留原请求方法(如原请求是 POST,跳转后仍用 POST,而 302 可能被浏览器转为 GET)。

  • 308 Permanent Redirect
    永久重定向,严格保留原请求方法(301 的“方法不变”版本)。

4xx(客户端错误状态码)

表示请求存在错误(如格式错误、权限不足等),服务器无法处理。

  • 400 Bad Request
    请求格式错误(如 JSON 语法错误、参数缺失,服务器无法理解)。

  • 401 Unauthorized
    请求需要身份验证(如未登录时访问需登录的页面,响应头 WWW-Authenticate 会提示认证方式)。

  • 403 Forbidden
    客户端已认证,但无权限访问资源(如普通用户尝试访问管理员页面)。

  • 404 Not Found
    请求的资源不存在(最常见的错误码,如 URL 拼写错误)。

  • 405 Method Not Allowed
    请求使用的 HTTP 方法(如 POST)不被服务器允许(响应头 Allow 会列出支持的方法,如 GET, HEAD)。

  • 406 Not Acceptable
    服务器无法返回客户端通过 Accept 头指定的格式(如客户端只接受 JSON,但服务器只能返回 XML)。

  • 408 Request Timeout
    服务器等待请求超时(客户端未在规定时间内发送完整请求)。

  • 409 Conflict
    请求与服务器当前状态冲突(如提交重复的订单号)。

  • 413 Payload Too Large
    请求体过大,服务器拒绝处理(如上传文件超过服务器限制)。

  • 414 URI Too Long
    请求的 URL 过长,服务器无法处理(通常由 GET 请求参数过多导致)。

  • 429 Too Many Requests
    客户端发送请求过于频繁,超出服务器的限流策略(配合 Retry-After 头提示重试时间)。

5xx(服务器错误状态码)

表示服务器接收请求后,因自身错误无法处理。

  • 500 Internal Server Error
    服务器内部错误(最常见的服务器错误,如代码 Bug、数据库连接失败)。

  • 501 Not Implemented
    服务器不支持请求的功能(如客户端使用了服务器未实现的 HTTP 方法)。

  • 502 Bad Gateway
    服务器作为网关/代理时,收到上游服务器的无效响应(如反向代理后端服务崩溃)。

  • 503 Service Unavailable
    服务器暂时无法处理请求(如服务器维护、过载,响应头 Retry-After 可提示恢复时间)。

  • 504 Gateway Timeout
    服务器作为网关/代理时,等待上游服务器响应超时。

  • 505 HTTP Version Not Supported
    服务器不支持客户端使用的 HTTP 版本(如客户端用 HTTP/2.0,但服务器只支持 HTTP/1.1)。

常用状态码表

分类状态码含义
成功200、201、204请求处理完成
重定向301、302、304需要跳转或使用缓存
客户端错误400、401、403、404、429请求有问题,需客户端修正
服务器错误500、502、503服务器故障,需服务端修复
  • 前端可通过状态码快速判断请求结果(如 2xx 执行成功逻辑,401 跳转登录页,404 显示“资源不存在”)。
  • 后端应根据具体业务场景返回精准的状态码(如创建资源用 201 而非 200,限流用 429 而非 500)。
  • 调试时,浏览器 DevTools 的 Network 面板可查看状态码,辅助定位问题(如 500 需查服务端日志,404 需检查 URL 是否正确)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值