HTTP协议中使用的状态码有五种类型(1xx、2xx、3xx、4xx、5xx),具体状态码及其含义如下:
1xx(信息类):表示请求已被接收,需要进一步处理才能完成请求。
- 100 Continue:表明初始的部分请求已经被接收,客户可以继续发送剩余的请求。
- 101 Switching Protocols:服务器已经理解请求,并将切换到不同的协议来完成这个请求。
2xx(成功类):表示请求已经成功被服务器接收、理解、并接受。
- 200 OK:请求已经成功被服务器接收、理解、并接受。
- 201 Created:请求已经被成功处理,并创建了资源。
- 202 Accepted:服务器已经接受请求,但尚未处理。
- 204 No Content:请求已经成功被服务器接收,但是不需要返回任何实体内容。
3xx(重定向类):表示需要客户端进一步的操作才能完成请求。
- 300 Multiple Choices:客户请求的资源有多种表示方法,服务器可以返回多个实体,并让用户或者用户代理选择其中一个。
- 301 Moved Permanently:请求的网页已经被永久移动到新的位置。
- 302 Found:请求的网页被暂时移动到新的位置。
- 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: 请求方法不允许
- 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:客户端请求的范围无效。
- 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协议版本。