以下是常见的HTTP状态码及其含义,按类别分类:
1xx(信息响应)
- 100 Continue:客户端应继续发送请求的剩余部分。
- 101 Switching Protocols:服务器同意切换协议(如升级到WebSocket)。
2xx(成功响应)
- 200 OK:请求成功。
- 201 Created:资源已创建(常用于POST请求)。
- 202 Accepted:请求已接受,但尚未处理完成。
- 204 No Content:服务器成功处理,但无返回内容。
- 206 Partial Content:返回部分内容(用于分块下载或断点续传)。
3xx(重定向)
- 301 Moved Permanently:资源永久重定向到新URI。
- 302 Found:资源临时重定向到新URI(HTTP/1.0,可能改变请求方法)。
- 303 See Other:临时重定向,强制客户端使用GET方法。
- 304 Not Modified:资源未修改,可使用缓存。
- 307 Temporary Redirect:临时重定向,保持原请求方法(如POST)。
- 308 Permanent Redirect:永久重定向,保持原请求方法。
4xx(客户端错误)
- 400 Bad Request:请求语法错误,服务器无法理解。
- 401 Unauthorized:请求需要身份验证(如未登录)。
- 403 Forbidden:服务器拒绝执行(权限不足)。
- 404 Not Found:请求的资源不存在。
- 405 Method Not Allowed:请求方法不被允许(如GET用于只支持POST的接口)。
- 408 Request Timeout:服务器等待请求超时。
- 409 Conflict:请求与资源当前状态冲突(如版本冲突)。
- 410 Gone:资源已永久删除(与404不同,表示资源曾存在)。
- 413 Payload Too Large:请求体超过服务器限制。
- 414 URI Too Long:请求的URI过长。
- 415 Unsupported Media Type:不支持的媒体类型(如上传格式错误)。
- 429 Too Many Requests:客户端发送过多请求(限流)。
- 431 Request Header Fields Too Large:请求头过大。
5xx(服务器错误)
- 500 Internal Server Error:服务器内部错误(通用错误)。
- 501 Not Implemented:服务器不支持请求的功能。
- 502 Bad Gateway:网关或代理服务器收到无效响应。
- 503 Service Unavailable:服务器暂时不可用(如过载或维护)。
- 504 Gateway Timeout:网关或代理服务器超时。
- 505 HTTP Version Not Supported:服务器不支持请求的HTTP版本。
- 507 Insufficient Storage:服务器存储空间不足(如上传文件时)。
- 508 Loop Detected:服务器检测到无限重定向循环。
- 511 Network Authentication Required:客户端需通过网络认证(如公共WiFi登录页面)。
补充说明
- HTTP/1.1规范:明确建议使用303/307/308替代302,以明确是否改变请求方法。
- 实际应用:常见状态码如200、404、500、503等需优先掌握。
- 特殊状态码:如418(彩蛋状态码"I’m a teapot")属非标准,常用于趣味场景。
整理时需确保分类清晰,说明简洁准确。如需进一步扩展,可参考RFC规范或实际开发场景。