1XX Informational(信息性状态码),接收的请求正在处理
2XX Success(成功状态码),请求正常处理完毕
3XX Redirection(重定向状态码),需要进行附加操作以完成请求
4XX Client Error(客户端错误状态码),服务器无法处理请求(客户端的锅)
5XX Server Error(服务器错误状态码),服务器处理请求出错(服务端的锅)
2XX
200 OK
请求被正常处理
204 No Content
表示请求已成功处理,响应报文不含实体的主体部分。也不允许返回任何实体的主体。一般用于只从客户端发信息给服务端而服务端不发信息给客户端的场景。
206 Partial Content
表示客户端进行了范围请求,而服务器成功执行了这部分的GET请求。响应报文中包含由Content-Range指定范围的实体内容。
3XX
301 Moved Permanently
永久性重定向。表示请求的资源已被分配了新的URI,以后应使用资源现在所指的URI。也就是说,如果已经把资源对应的URI保存为书签,应该按Location首部字段提示的URI重新保存。
302 Found
临时性重定向。表示资源被分配了新的URI,希望客户端(本次)能使用新的URI访问。
303 See Other
与 302 Found 状态码有着相同的功能,但 303 状态码明确表示客户端应当采用 GET 方法获取资源。
301、302标准禁止将 POST 方法改变成 GET 方法的,但实际使用时大家都会这么做。
304 Not Modified
表示客户端发送附带条件的请求(If-Match,If-Modified-Since,If-None-Match,If-Range,If-Unmodified-Since)时,服务端允许请求访问资源,但未满足条件的情况(通常指资源未过期)。304 状态码返回时,不包含任何响应的主体部分。304 虽然被划分在 3XX 类别中,但跟重定向没有关系。
307 Temporary Redirect
临时重定向。该状态码与 302 Found 有着相同的含义。尽管 302 标准禁止 POST 变换成 GET,但实际使用时大家并不遵守。
307 会遵照浏览器标准,不会从 POST 变成 GET。但,对于处理响应时的行为,每种浏览器有可能出现不同的情况。
4XX
400 Bad Request
表示请求报文中存在语法错误。
401 Unauthorized
表示发送的请求需要有通过HTTP认证(BASIC 认证、DIGEST 认证)的认证信息。如果之前已进行过一次请求,则表示用户认证失败。
返回含有 401 的响应必须包含一个适用于被请求资源的 WWW-Authenticate 首部用以咨询(challenge)用户信息。当浏览器初次接收到 401 响应,会弹出认证用的对话窗口。
403 Forbidden
表示请求资源的访问被服务器拒绝了。服务端没必要给出拒绝的详细理由,但如果想作说明,可以在实体的主体部分对原因进行描述。
未获得文件系统的访问授权,访问权限出现某些问题(从未授权的发送源 IP 地址试图访问)等情况都可能是发生 403 的原因。
404 Not Found
服务器上找不到请求的资源。也可以在服务器拒绝请求且不想说明理由时使用。
5XX
500 Internal Server Error
服务端在执行请求时发生错误。
503 Service Unavailable
表示服务器暂时处于超负载或正在进行停机维护,现在无法处理请求。如果事先得知解除以上状况需要的时间,最好写入 Retry After 首部字段再返回给客户端。
网友评论