常见的HTTP返回状态码大全
HTTP状态代码用于表示服务器对客户端请求的响应状态。以下是常见的HTTP状态代码及其描述:
1xx – 信息响应
- 100 Continue:请求的初始部分已被接受,客户端应继续发送其余部分。
- 101 Switching Protocols:服务器根据客户端的要求正在切换协议。
2xx – 成功
- 200 OK:请求成功。
- 201 Created:请求已经成功,并因此创建了一个新的资源。
- 202 Accepted:请求已被接受,但还未处理。
- 203 Non-Authoritative Information:服务器已成功处理了请求,但返回的信息可能来自另一个来源。
- 204 No Content:服务器已成功处理了请求,但没有返回任何内容。
- 205 Reset Content:服务器已成功处理了请求,但没有返回任何内容,并且要求请求者重置文档视图。
- 206 Partial Content:服务器成功处理了部分GET请求。
3xx – 重定向
- 300 Multiple Choices:对于多个可能的响应,请求者应选择一个。
- 301 Moved Permanently:请求的URL已移动到另一个URL。
- 302 Found:请求的资源现在临时从不同的URI返回。
- 303 See Other:对于GET和HEAD请求,查看另一个URI。
- 304 Not Modified:资源自上次请求后没有更改。
- 305 Use Proxy:请求者只能使用代理访问资源。
- 307 Temporary Redirect:请求的资源现在临时从不同的URI返回。
4xx – 客户端错误
- 400 Bad Request:请求格式不正确。
- 401 Unauthorized:请求未授权。
- 402 Payment Required:为将来使用保留。
- 403 Forbidden:服务器拒绝请求。
- 404 Not Found:服务器找不到请求的资源。
- 405 Method Not Allowed:不允许使用的请求方法。
- 406 Not Acceptable:服务器只能生成客户端不接受的响应。
- 407 Proxy Authentication Required:请求者应当使用代理进行身份验证。
- 408 Request Timeout:服务器在等待请求时超时。
- 409 Conflict:请求不能完成,因为发生了冲突。
- 410 Gone:请求的资源已被永久删除。
- 411 Length Required:没有定义请求长度。
- 412 Precondition Failed:服务器不满足请求的前提条件。
- 413 Payload Too Large:请求实体过大,服务器无法处理。
- 414 URI Too Long:请求的URI过长,服务器无法处理。
- 415 Unsupported Media Type:请求的格式不支持。
- 416 Range Not Satisfiable:请求中的Range头字段无法满足。
- 417 Expectation Failed:服务器无法满足Expect请求头字段的要求。
5xx – 服务器错误
- 500 Internal Server Error:服务器内部出错。
- 501 Not Implemented:服务器不支持实现请求所需要的功能。
- 502 Bad Gateway:作为网关或代理工作的服务器遇到了一个无效响应。
- 503 Service Unavailable:服务器目前无法使用(由于超载或停机维护)。
- 504 Gateway Timeout:网关或代理服务器没有及时从上游服务器收到请求。
- 505 HTTP Version Not Supported:服务器不支持请求中所使用的HTTP版本。
可能会遇到的HTTP状态代码
1xx – 信息响应
- 102 Processing:服务器已接受请求,但尚未完成。
- 103 Early Hints:服务器可能想要在最终响应之前发送一些预加载提示。
3xx – 重定向
- 306 Switch Proxy:以前使用的代码,现在已被弃用。
- 308 Permanent Redirect:请求的资源已被永久移动到其他位置,将使用GET方法再次访问。
4xx – 客户端错误
- 418 I’m a teapot:由于“超文本咖啡壶控制协议”(HTCPCP/1.0)定义的April Fools joke,服务器拒绝尝试制作咖啡。
- 421 Misdirected Request:请求针对的是无法产生响应的服务器。可能由于服务器配置导致。
- 422 Unprocessable Entity:请求格式正确,但语义错误。
- 423 Locked:资源被锁定。
- 424 Failed Dependency:由于之前的请求失败,所以此请求失败。
- 425 Too Early:服务器不愿意冒着重放攻击的风险去处理请求。
- 426 Upgrade Required:客户端应当切换到另一协议,例如TLS/1.0。
- 428 Precondition Required:请求必须满足服务器的前提条件。
- 429 Too Many Requests:用户在给定的时间内发送了太多的请求。
- 431 Request Header Fields Too Large:请求的头字段太大,服务器不愿意处理。
- 451 Unavailable For Legal Reasons:因法律原因,资源不可用。
5xx – 服务器错误
- 506 Variant Also Negotiates:服务器存在内部配置错误。
- 507 Insufficient Storage:服务器无法存储完成请求所必需的内容。
- 508 Loop Detected:服务器在处理请求时检测到无限循环。
- 510 Not Extended:进一步的扩展是必要的来完成请求。
- 511 Network Authentication Required:客户端需要进行网络身份验证才能获取网络访问。
这些状态代码涵盖了HTTP/1.1和部分HTTP/2的状态代码,以及一些扩展或非标准的状态代码。当遇到未知的状态代码时,最好查阅相关的RFC文档或者其他权威资料。