HTTP状态码被分为五大类,每一类都代表了不同的响应状态。以下是一些常见的HTTP状态码类型及其含义:
1xx: 信息响应
这类状态码表示临时的响应,并需要请求者继续执行操作。
- 100 Continue: 服务器已经接收到请求头,并且客户端应继续发送请求体。
- 101 Switching Protocols: 服务器根据客户端的请求切换协议。
2xx: 成功
这类状态码表明客户端的请求被服务器成功接收并处理。
- 200 OK: 请求成功,并且返回了请求的资源。
- 201 Created: 请求已成功,并且新资源已经被创建。
- 204 No Content: 请求成功,但没有返回任何内容。
- 206 Partial Content: 客户端进行了范围请求,并且服务器成功执行了这部分请求。
3xx: 重定向
这类状态码表明客户端需要采取进一步的操作来完成请求。
- 301 Moved Permanently: 请求的资源已被永久移动到新位置。
- 302 Found (或Moved Temporarily): 请求的资源临时移动到了另一个位置。
- 303 See Other: 服务器发送这个状态码和一个URI,客户端应使用GET方法访问那个位置。
- 304 Not Modified: 资源未修改,客户端可以使用缓存的内容。
- 307 Temporary Redirect: 请求的资源临时移动到了另一个位置,但应保持原始请求方法。
4xx: 客户端错误
这类状态码表明客户端可能发生了错误,服务器无法处理请求。
- 400 Bad Request: 请求格式错误,服务器无法理解。
- 401 Unauthorized: 请求需要用户认证。
- 403 Forbidden: 服务器理解请求,但拒绝执行。
- 404 Not Found: 请求的资源在服务器上未找到。
- 405 Method Not Allowed: 请求行中指定的方法不允许用于请求相应的资源。
- 408 Request Timeout: 服务器等待客户端发送的请求时间过长,超时。
5xx: 服务器错误
这类状态码表明服务器在处理请求时发生了错误。
- 500 Internal Server Error: 服务器内部错误,无法完成请求。
- 501 Not Implemented: 服务器不支持请求的功能。
- 502 Bad Gateway: 作为网关或代理的服务器从上游服务器收到了无效的响应。
- 503 Service Unavailable: 服务器当前不可用(过载或维护)。
- 504 Gateway Timeout: 作为网关或代理的服务器没有及时从上游服务器收到请求。
这些状态码是Web开发者和测试人员在日常工作中经常遇到的。了解这些状态码有助于更好地理解HTTP请求的处理过程以及可能遇到的问题。