HTTP响应状态码用于表示服务器对客户端请求的处理结果。状态码分为五个主要类别
1. 信息性状态码 (1xx)
表示请求已被接收,继续处理请求。
- 100 Continue: 客户端应继续请求,或者忽略该状态码并继续请求的响应。
- 101 Switching Protocols: 服务器根据客户端的请求切换协议。
2. 成功状态码 (2xx)
这些状态码表示请求已成功被接收、理解和处理。
- 200 OK: 请求成功,服务器返回请求的资源。
- 201 Created: 请求成功并导致创建了新的资源。
- 202 Accepted: 请求已接收,但尚未处理。
- 204 No Content: 请求成功,但没有返回内容。
- 206 Partial Content: 服务器成功处理了部分请求。
3. 重定向状态码 (3xx)
这些状态码表示客户端需要进一步操作才能完成请求。
- 300 Multiple Choices: 请求的资源有多种选择,客户端需要选择一个。
- 301 Moved Permanently: 请求的资源已被永久移动到新位置,后续请求应使用新的URL。
- 302 Found: 请求的资源临时被移动到新位置,客户端应继续使用原URL。
- 303 See Other: 对于当前请求的响应可以在另一个URI下找到,客户端应使用GET方法请求该URI。
- 304 Not Modified: 客户端的缓存资源未被修改,自上次请求以来可继续使用缓存。
- 307 Temporary Redirect: 请求的资源临时被移动,客户端应使用原方法请求新的URL。
- 308 Permanent Redirect: 请求的资源永久被移动,客户端应使用原方法请求新的URL。
4. 客户端错误状态码 (4xx)
这些状态码表示客户端请求有错误,导致服务器无法处理。
- 400 Bad Request: 请求无效,服务器无法理解。
- 401 Unauthorized: 请求要求身份验证,未提供有效的凭据。
- 403 Forbidden: 服务器理解请求,但拒绝执行。
- 404 Not Found: 请求的资源未找到。
- 405 Method Not Allowed: 请求方法不被允许。
- 408 Request Timeout: 服务器在等待请求时超时。
- 429 Too Many Requests: 客户端发送的请求过多,服务器拒绝处理。
5. 服务器错误状态码 (5xx)
这些状态码表示服务器在处理请求时发生了错误。
- 500 Internal Server Error: 服务器遇到意外情况,无法完成请求。
- 501 Not Implemented: 服务器不支持请求的功能。
- 502 Bad Gateway: 作为网关或代理的服务器收到无效响应。
- 503 Service Unavailable: 服务器当前无法处理请求,通常是由于过载或维护。
- 504 Gateway Timeout: 作为网关或代理的服务器未能及时从上游服务器获取请求。