官方解析
HTTP(超文本传输协议)常见的状态码有以下几种:
1xx(信息类状态码):指示已经接收到请求,正在继续处理。
2xx(成功状态码):指示请求已经被接收、理解和接受。
-
200 OK:请求已成功处理。
-
201 Created:请求已经被实现,而且有一个新的资源已经依据请求的需要而建立。
-
204 No Content:服务器已经成功处理了请求,但是没有返回任何实体内容。
3xx(重定向状态码):需要进行附加操作以完成请求。
-
301 Moved Permanently:请求的网页已永久移动到新位置。
-
302 Found:请求的网页已经临时移动到新位置。
-
304 Not Modified:客户端发送了一个带条件的请求,服务器端允许请求访问资源,但是请求未满足条件。
4xx(客户端错误状态码):请求包含错误语法或不能被执行。
-
400 Bad Request:请求报文存在语法错误。
-
401 Unauthorized:表示发送的请求需要有通过 HTTP 认证的认证信息。
-
403 Forbidden:表示对请求资源的访问被服务器拒绝。
-
404 Not Found:请求的资源不存在。
5xx(服务器错误状态码):服务器在处理请求的过程中发生了错误。
-
500 Internal Server Error:服务器遇到了一个未曾预料的状况,导致无法完成对请求的处理。
-
502 Bad Gateway:充当网关或代理的服务器,从远端服务器接收到了一个无效的请求。
-
503 Service Unavailable:服务器暂时处于超负载或正在停机维护,无法处理请求。
状态码是服务器对客户端请求结果的反馈,根据状态码可以快速定位问题所在,进行相应的处理。
口诀 ( 也不用完全记忆 )
一信 二成 三重 四五败
1xx 一信
提示信息,是协议处理的中间状态,还需要后续操作 ( 感觉一般也不会遇到 )
2xx 二成
-
200 : 常见的成功状态码
-
204 : 200状态码 - 无Body版
-
206 : 200状态码 - part版 ( 表示响应返回的body数据不是资源的全部 )
3xx 三重
-
301 : 永久重定向
-
302 : 301状态码 - 临时版 ( 临时重定向 )
-
304 : 不具有跳转意义,表示资源未修改,重定向到缓存 ( 304 Not Modified )
4xx 四败
客户端!!!
-
404 : 资源不存在或者未找到 ( 404 NOT FOUND )
-
400 : 请求报文有错误 ( 记忆方法: 400最小 发生在 Http 第一步(发送请求)中 )
-
401 : 请求需要认证
-
403 : 禁止访问 ( 403 Forbidden )
5xx 五败
服务端!!
-
500 : 笼统错误码
-
502 : 服务器网关或者代理出现问题 ( 502 Bad GateWay )
-
503 : 服务器正忙,无法处理请求 ( 503 Unavailable )
HTTP 会通过状态码来表达请求响应的情况,常用的状态有以下的内容:
1xx:提示信息,中间状态,实际用到的比较少
2xx:表示服务器成功处理了客户端的请求
-
200 OK
-
204 No Content 也是成功,但响应头没有 body 信息
-
206 Partial Content 分块下载,断点续传,表示返回的 body 只是一部分
3xx:表示客户端的请求资源发生了变动,需要客户端用新的 URL 重新发送请求,也就是重定向
-
301 Moved Permanently 永久重定向,请求的资源不存在了
-
302 Found 临时重定向,请求资源还在
-
304 Not Modified 不具有跳转的含义,缓存重定向,用于缓存控制
4xx:客户端发送的报文有误,服务器无法处理
-
400 Bad Request 客户端请求的豹纹有错误
-
403 Forbidden 服务器禁止访问
-
404 Not Found 服务器上不存在
5xx:客户端请求报文正确,但是服务器内部发生了错误,属于服务端的错误码
-
500 Internal Server Error 服务器内部错误
-
501 Not Implemented 请求的功能还不支持,即将开业敬请期待
-
502 Bad Gateway 服务器作为网关和代理返回的错误码
-
503 Service Unavaliable 服务器很忙