HTTP 状态码
HTTP 状态码用于表示服务器对请求的响应状态,分为 5 类,每一类的状态码代表不同的响应类型:
1. 1xx 信息性响应
表示请求已接收,服务器继续处理。
- 100 Continue:客户端应继续请求操作,服务器已接收到请求头。
- 101 Switching Protocols:服务器正在切换协议,通常用于 WebSocket。
- 102 Processing:服务器已接收到请求,但正在处理(用于 WebDAV 扩展)。
2. 2xx 成功
表示请求已成功处理。
- 200 OK:请求成功,服务器返回请求的数据(常见于 GET 请求)。
- 201 Created:请求成功,服务器已创建新的资源(常见于 POST 请求)。
- 202 Accepted:请求已接受,但尚未处理完毕。
- 203 Non-Authoritative Information:请求成功,但返回的信息是从第三方获取的副本。
- 204 No Content:请求成功,但没有内容返回(常见于删除操作)。
- 205 Reset Content:请求成功,客户端应重置表单等内容。
- 206 Partial Content:服务器成功处理部分请求(用于支持断点续传)。
3. 3xx 重定向
表示客户端需要进一步的操作来完成请求,通常用于 URL 重定向。
- 300 Multiple Choices:请求的资源有多种选择,服务器返回一个选项列表。
- 301 Moved Permanently:资源已永久移动到新的 URL,未来请求应使用新 URL。
- 302 Found:资源临时移动到另一个 URL,客户端应继续使用原来的 URL。
- 303 See Other:客户端应使用 GET 请求来访问不同的 URL。
- 304 Not Modified:资源未修改,客户端可以继续使用缓存(常见于协商缓存)。
- 307 Temporary Redirect:资源临时移动,客户端应继续使用原来的请求方法访问新 URL。
- 308 Permanent Redirect:资源已永久移动,客户端应使用新的 URL 和相同的请求方法。
4. 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:请求必须指定
Content-Length
头。 - 412 Precondition Failed:请求头中的条件未满足。
- 413 Payload Too Large:请求体太大,服务器无法处理。
- 414 URI Too Long:请求 URI 太长,服务器无法处理。
- 415 Unsupported Media Type:服务器不支持请求中的媒体格式。
- 416 Range Not Satisfiable:请求的范围无效,无法提供资源的部分内容。
- 417 Expectation Failed:服务器无法满足
Expect
头中的要求。
5. 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:服务器无法存储完成请求所需的内容(用于 WebDAV)。
- 508 Loop Detected:服务器检测到请求在处理过程中出现了无限循环(用于 WebDAV)。
常见状态码
- 100 Continue 继续,一般在发送post请求时,已发送了http header之后服务端将返回此信息,表示确认,之后发送具体参数信息
- 200 OK 正常返回信息(memory cache 强缓存)
- 201 Created 请求成功并且服务器创建了新的资源
- 202 Accepted 服务器已接受请求,但尚未处理
- 301 Moved Permanently 请求的网页已永久移动到新位置。
- 302 Found 临时性重定向。
- 304 Not Modified 自从上次请求后,请求的网页未修改过。 协商缓存
- 307 Internal Redirect 内部重定向
- 400 Bad Request 服务器无法理解请求的格式,客户端不应当尝试再次使用相同的内容发起请求。
- 401 Unauthorized 请求未授权。
- 403 Forbidden 禁止访问。
- 404 Not Found 找不到如何与 URI 相匹配的资源。
- 500 Internal Server Error 最常见的服务器端错误。
- 503 Service Unavailable 服务器端暂时无法处理请求(可能是过载或维护)。