标准 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": ["用户名不存在"]
  }
}

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

相关推荐
paishishaba几秒前
数据格式 、序列化和反序列化
网络
linux kernel几秒前
第一部分:网络基础
网络·linux网络
朝新_39 分钟前
【EE初阶】JVM
java·开发语言·网络·jvm·笔记·算法·javaee
会开花的二叉树2 小时前
应用层网络协议深度解析:设计、实战与安全
网络·网络协议·安全
不做菜鸟的网工3 小时前
RSTP对于STP改进点
网络协议
星空的资源小屋4 小时前
MkFont,一款开源免费的字体设计工具
网络·人工智能·pdf·电脑
无敌最俊朗@5 小时前
UDP 高频面试题解析
网络·网络协议·udp
网安INF5 小时前
网络攻防技术:防火墙技术
网络·安全·web安全·网络安全·防火墙
nassi_6 小时前
开发板网络配置
linux·网络·嵌入式硬件
ALex_zry6 小时前
论gRPC:基于 TCP/IP 的通用网络模式,以及基于 Unix Domain Sockets (UDS) 的同机进程间通信 (IPC) 模式
网络·tcp/ip·unix