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 | 资源需要使用代理进行访问 | ||
307 | 临时重定向 | ||
4**(客户端错误) | 400 | 客户端语法错误 | 比如url中添加了个json对象当做参数 |
401 | 请求需要用户的身份认证 | ||
403 | 服务器拒绝该请求 | ||
404 | 找不到对应的资源或请求地址 | ||
405 | 禁止该请求使用 | ||
406 | 无法响应 | ||
407 | 需要请求者的身份认证,同时还得使用代理 | ||
408 | 请求发送超时 | ||
409 | 服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息 | ||
410 | 服务器已经将对应的资源删除 | ||
411 | 请求中的header头长度不符合要求 | ||
412 | 请求不满足服务器的条件 | ||
413 | 请求体过大 | ||
414 | url过长,无法处理 | ||
415 | 请求格式不支持web | ||
416 | 客户端请求的范围无效 | ||
417 | 服务器无法满足Expect的请求头信息 | ||
5**(服务器错误) | 500 | 服务器内部错误,无法完成请求 | 服务器emo |
501 | 服务器不支持请求的功能,无法完成请求 | ||
502 | 作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应 | ||
503 | 由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中 | 服务器emo | |
504 | 充当网关或代理的服务器,未及时从远端服务器获取请求 | 超时 | |
505 | 服务器不支持请求的HTTP协议的版本,无法完成处理 |
重点要知道200 304 404 500这几个常见状态码的使用,并了解304协商缓存的配置,下期专门讲一下304