HTTP状态码
的英文为 HTTP Status Code
。下面是常见的HTTP状态码:html
HTTP状态码
由三个十进制数字组成,第一个十进制数字定义了状态码的类型,后两个数字没有分类的做用。HTTP状态码共分为5种类型:浏览器
分类 | 分类描述 |
---|---|
1** | 信息,服务器收到请求,须要请求者继续执行操做 |
2** | 成功,操做被成功接收并处理 |
3** | 重定向,须要进一步的操做以完成请求 |
4** | 客户端错误,请求包含语法错误或没法完成请求 |
5** | 服务器错误,服务器在处理请求的过程当中发生了错误 |
100
: 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者若是请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。101
: 服务器已经理解了客户端的请求,并将经过Upgrade 消息头
通知客户端采用不一样的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切换到在Upgrade 消息头
中定义的那些协议。只有在切换新的协议更有好处的时候才应该采起相似措施。例如,切换到新的HTTP
版本比旧版本更有优点,或者切换到一个实时且同步的协议以传送利用此类特性的资源。102
: 由WebDAV(RFC 2518)
扩展的状态码,表明处理将被继续执行。200
: 请求已成功,请求所但愿的响应头或数据体将随此响应返回。201
: 请求已经被实现,并且有一个新的资源已经依据请求的须要而创建,且其 URI
已经随Location
头信息返回。假如须要的资源没法及时创建的话,应当返回 '202 Accepted'
。202
: 服务器已接受请求,但还没有处理。正如它可能被拒绝同样,最终该请求可能会也可能不会被执行。在异步操做的场合下,没有比发送这个状态码更方便的作法了。返回202状态码
的响应的目的是容许服务器接受其余过程的请求(例如某个天天只执行一次的基于批处理的操做
),而没必要让客户端一直保持与服务器的链接直到批处理操做所有完成。在接受请求处理并返回202状态码
的响应应当在返回的实体中包含一些指示处理当前状态
的信息,以及指向处理状态监视器或状态预测的指针,以便用户可以估计操做是否已经完成。203
: 服务器已成功处理了请求,但返回的实体头部元信息不是在原始服务器上有效的肯定集合,而是来自本地或者第三方的拷贝。当前的信息多是原始版本的子集或者超集。204
: 服务器成功处理了请求,但不须要返回任何实体内容,而且但愿返回更新了的元信息。响应可能经过实体头部的形式,返回新的或更新后的元信息。若是存在这些头部信息,则应当与所请求的变量相呼应。若是客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页面,而不产生任何文档视图上的变化,即便按照规范新的或更新后的元信息应当被应用到用户浏览器活动视图中的文档。因为 204
响应被禁止包含任何消息体,所以它始终以消息头后的第一个空行结尾。205
: 服务器成功处理了请求,且没有返回任何内容。可是与204响应不一样,返回此状态码的响应要求请求者重置文档视图。该响应主要是被用于接受用户输入后,当即重置表单,以便用户可以轻松地开始另外一次输入。206
: 服务器已经成功处理了部分 GET 请求。相似于 FlashGet
或者迅雷这类的 HTTP
下载工具都是使用此类响应实现断点续传或者将一个大文档分解为多个下载段同时下载。该请求必须包含 Range
头信息来指示客户端但愿获得的内容范围,而且可能包含 If-Range
来做为请求条件。响应必须包含以下的头部域:Content-Range
用以指示本次响应中返回的内容的范围;若是是 Content-Type
为 multipart/byteranges
的多段下载,则每一 multipart
段中都应包含 Content-Range
域用以指示本段的内容范围。假如响应中包含Content-Length
,那么它的数值必须匹配它返回的内容范围的真实字节数。Date ETag 和/或Content-Location
,假如一样的请求本应该返回200响应
。Expires, Cache-Control,和/或 Vary
,假如其值可能与以前相同变量的其余响应对应的值不一样的话。假如本响应请求使用了 If-Range
强缓存验证,那么本次响应不该该包含其余实体头;假如本响应的请求使用了 If-Range
弱缓存验证,那么本次响应禁止包含其余实体头;这避免了缓存的实体内容和更新了的实体头信息之间的不一致。不然,本响应就应当包含全部本应该返回200响应
中应当返回的全部实体头部域。假如 ETag
或 Last-Modified
头部不能精确匹配的话,则客户端缓存应禁止将206响应
返回的内容与以前任何缓存过的内容组合在一块儿。任何不支持 Range
以及 Content-Range
头的缓存都禁止缓存206响应
返回的内容。207
: 由 WebDAV(RFC 2518)
扩展的状态码,表明以后的消息体将是一个XML
消息,而且可能依照以前子请求数量的不一样,包含一系列独立的响应代码。今天的分享就到这里,明天继续分享剩下的状态码。文字太多,让各位观众老爷的眼睛受累了。
缓存