状态码元素是一个三位整数的号码,它给出了试图理解和满足请求的结果。
HTTP状态码是可扩展的。HTTP客户端不被要求理解所有被注册状态码的含义,虽然这种理解是明显可取的。但是,客户端必须明白任何状态码的分类(由第一个数字表明)并将一个无法识别的状态码视为同一个类的x00状态码,有个特例即接收者不得缓存一个无法识别的状态码的响应。
例如,如果客户端接收到一个无法识别的状态码471,客户端可以假设它的请求出现了一些错误并像它接收到400(错误请求)状态码那样对待这个响应。响应消息将通常包含一个解释状态的表示。
状态码的第一个数字定义的响应的分类。后两位数字没有分类作用,第一个数字有五个值:
- 1xx(信息):请求被接收,继续处理
- 2xx(成功):请求被成功接收,理解并接受
- 3xx(重定向):完成请求需要进一步动作
- 4xx(客户端错误):请求包含错误的语法或不能被完成
- 5xx(服务器错误):服务器处理一个看起来有效的请求失败