http状态码汇总(全)

114 阅读5分钟

http状态码汇总(全)

当一个用户浏览网页或者发送请求时,服务器都会返回一个包含http状态码的信息头来响应,今天就针对状态码做一下分类汇总。

状态码一般是三个十进制数字组成的,按照首位1-5分为五类

分类状态码中文描述/含义场景
1**(服务器接收到请求,需要请求者继续下一步操作)100标识客户端鹰继续发送请求的剩余部分客户端上传超大文件之前询问服务器是否可以发送
101切换协议建立websocket连接时,通过返回101确认协议切换
2**(操作成功)200表示请求成功
201表示成功请求并创建了新的资源
202表示请求已经被接收到,但是还未处理完成
203服务器已成功处理了请求,但返回的实体头部元信息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。当前的信息可能是原始版本的子集或者超集。例如,包含资源的元数据可能导致原始服务器知道元信息的超级。使用此状态码不是必须的,而且只有在响应不使用此状态码便会返回200 OK的情况下才是合适的
204服务器成功处理了请求,但不需要返回任何实体内容。 如果客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页面,而不产生任何文档视图上的变化。
205服务器成功处理了请求,且没有返回任何内容。该响应主要是被用于接受用户输入后,立即重置表单,以便用户能够轻松地开始另一次输入。 
206表示服务器只响应了部分请求这种情况经常发生在客户端继续请求一个未完成的下载的时候(通常是当客户端加载一个体积较大的嵌入文件,比如视屏或PDF文件),或者是客户端尝试实现带宽遏流的时候.
3**(重定向)300客户端请求了实际指向多个资源的URL。这个代码是和一个选项列表一起返回的,然后用户就可以选择他希望的选项了
301请求的URL已移走。Response中应该包含一个Location URL, 说明资源现在所处的位置
302与状态码301类似。但这里的移除是临时的。 客户端会使用Location中给出的URL,重新发送新的HTTP request
303需要用户查看其他地址与301类似
304未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源常见。此时客户端从内存或者硬盘去读取资源
305资源需要使用代理进行访问
306
307临时重定向
4**(客户端错误)400客户端语法错误比如url中添加了个json对象当做参数
401请求需要用户的身份认证
402
403服务器拒绝该请求
404找不到对应的资源或请求地址
405禁止该请求使用
406无法响应
407需要请求者的身份认证,同时还得使用代理
408请求发送超时
409服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息
410服务器已经将对应的资源删除
411请求中的header头长度不符合要求
412请求不满足服务器的条件
413请求体过大
414url过长,无法处理
415请求格式不支持web
416客户端请求的范围无效
417服务器无法满足Expect的请求头信息
5**(服务器错误)500服务器内部错误,无法完成请求服务器emo
501服务器不支持请求的功能,无法完成请求
502作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应
503由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中服务器emo
504充当网关或代理的服务器,未及时从远端服务器获取请求超时
505服务器不支持请求的HTTP协议的版本,无法完成处理

重点要知道200 304 404 500这几个常见状态码的使用,并了解304协商缓存的配置,下期专门讲一下304