标准 HTTP 状态码详解

HTTP 状态码分类详解

分类 范围 含义
1xx 信息性 100--199 请求已接收,继续处理
2xx 成功 200--299 请求成功,服务器返回预期结果
3xx 重定向 300--399 客户端需进一步操作以完成请求
4xx 客户端错误 400--499 请求有误,客户端需修改请求
5xx 服务器错误 500--599 服务器处理请求时发生错误

常见状态码详解

1xx 信息性

  • 100 Continue:初始请求已接受,继续发送剩余部分。

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

2xx 成功

  • 200 OK:请求成功,返回数据。

  • 201 Created:资源创建成功(常用于 POST)。

  • 204 No Content:请求成功但无返回内容(如 DELETE)。

3xx 重定向

  • 301 Moved Permanently:资源永久重定向到新地址。

  • 302 Found:资源临时重定向。

  • 304 Not Modified:资源未修改,可使用缓存。

4xx 客户端错误

  • 400 Bad Request:请求格式错误或参数无效。

  • 401 Unauthorized:未认证,需登录。

  • 403 Forbidden:已认证但无权限访问。

  • 404 Not Found:请求资源不存在。

  • 429 Too Many Requests:请求频率过高,被限流。

5xx 服务器错误

  • 500 Internal Server Error:服务器内部错误。

  • 502 Bad Gateway:网关收到无效响应。

  • 503 Service Unavailable:服务器暂时不可用(如维护中)。

  • 504 Gateway Timeout:网关超时,未收到上游响应。

企业级建议

在企业级系统中,推荐使用标准 HTTP 状态码来表达请求结果,同时在响应体中提供结构化的业务错误信息:

复制代码
HTTP/1.1 400 Bad Request
{
  "code": 1001,
  "message": "用户名或密码错误",
  "errors": {
    "username": ["用户名不存在"]
  }
}

这样既保持了协议语义清晰,又方便前端统一处理和国际化。

相关推荐
郝学胜-神的一滴8 小时前
深入解析Python字典的继承关系:从abc模块看设计之美
网络·数据结构·python·程序人生
绵绵细雨中的乡音8 小时前
深入理解 ET 与 LT 模式及其在 Reactor 模型中的应用
服务器·网络·php
吠品8 小时前
企业信任基石OV SSL证书
网络协议·https·ssl
暖馒9 小时前
Modbus应用层协议的深度剖析
网络·网络协议·c#·wpf·智能硬件
开源技术10 小时前
DNS详解——域名是如何解析的
http
yunfuuwqi10 小时前
OpenClaw✅真·喂饭级教程:2026年OpenClaw(原Moltbot)一键部署+接入飞书最佳实践
运维·服务器·网络·人工智能·飞书·京东云
迎仔11 小时前
C-算力中心网络隔离实施方法:怎么搞?
运维·网络
代码游侠11 小时前
C语言核心概念复习——网络协议与TCP/IP
linux·运维·服务器·网络·算法
枷锁—sha11 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Zach_yuan12 小时前
深入浅出 JSONCpp
linux·服务器·网络·c++