HTTP状态码用于表示客户端请求的响应状态,分为五类。以下是各类状态码的详细解读:
1xx(信息响应)
-
100 Continue 服务器已收到请求头,客户端应继续发送请求体(用于大文件上传前的确认)。
-
101 Switching Protocols 服务器根据客户端请求切换协议(如升级到WebSocket)。
-
102 Processing 服务器已接受请求但处理尚未完成(用于长时间操作,如异步处理)。
-
103 Early Hints 服务器提前返回部分响应头,提示客户端预加载资源。
2xx(成功)
-
200 OK 请求成功,返回对应资源(GET/POST常见)。
-
201 Created 资源创建成功(POST/PUT后返回,通常包含新资源的URL)。
-
202 Accepted 请求已接受但未处理完成(适用于异步任务)。
-
204 No Content 请求成功,但无返回内容(如DELETE请求)。
-
206 Partial Content 部分内容响应(用于分块下载或断点续传)。
3xx(重定向)
-
301 Moved Permanently 资源永久重定向到新URL,客户端应更新书签。
-
302 Found 资源临时重定向到新URL,客户端应保持原URL。
-
303 See Other 强制客户端使用GET方法访问新URL(避免重复提交POST)。
-
304 Not Modified 资源未修改,客户端可使用缓存版本(需配合If-Modified-Since等头使用)。
-
307 Temporary Redirect 临时重定向,要求保持原请求方法(如POST)。
-
308 Permanent Redirect 永久重定向,要求保持原请求方法(类似301但更严格)。
4xx(客户端错误)
-
400 Bad Request 请求语法错误或参数无效(通用客户端错误)。
-
401 Unauthorized 需要身份认证(如未提供Token或认证失败)。
-
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 URL过长(通常因参数过多导致)。
-
415 Unsupported Media Type 不支持的请求数据类型(如上传格式错误)。
-
429 Too Many Requests 客户端请求过于频繁(限流时返回)。
-
451 Unavailable For Legal Reasons 因法律原因无法访问(如政府审查)。
5xx(服务器错误)
-
500 Internal Server Error 通用服务器错误(未明确分类的故障)。
-
501 Not Implemented 服务器不支持请求的功能(如未实现的HTTP方法)。
-
502 Bad Gateway 网关或代理服务器收到无效响应(上游服务器故障)。
-
503 Service Unavailable 服务器暂时不可用(维护或过载,通常伴随Retry-After头)。
-
504 Gateway Timeout 网关或代理服务器等待上游响应超时。
-
505 HTTP Version Not Supported 服务器不支持请求的HTTP协议版本。
-
507 Insufficient Storage 服务器存储空间不足(如WebDAV操作失败)。
-
508 Loop Detected 服务器检测到无限重定向循环(WebDAV相关)。
-
511 Network Authentication Required 客户端需进行网络认证(如连接公共WiFi时的登录页面)。
其他特殊状态码
-
418 I'm a Teapot 彩蛋状态码(源自愚人节玩笑,表示服务器是“茶壶”)。
-
422 Unprocessable Entity 请求格式正确但语义错误(如验证失败,常见于WebDAV或REST API)。
-
451 明确因法律原因无法访问(RFC标准,非玩笑)。
关键区别
-
301 vs 302 301影响缓存和SEO(永久移动),302仅临时重定向。
-
401 vs 403 401需身份认证,403认证后仍无权限。
-
404 vs 410 404资源不存在(可能临时),410资源被永久移除。
-
502 vs 504 502网关收到无效响应,504网关等待上游超时。
掌握这些状态码有助于快速定位问题,优化客户端与服务器的交互逻辑。
评论前必须登录!
注册