HTTP response status codes

  HTTP响应状态代码指示特定的HTTP请求是否已成功完成。回答分为五类:

  1.  信息响应(100–199),
  2.  成功响应(200–299),
  3.  重定向(300–399),
  4.  客户端错误(400–499),
  5.  和服务器错误(500–599)。

  1、Information responses

  100 Continue

  这个临时响应表示到目前为止一切正常,客户端应该继续请求,如果请求已经完成,则忽略响应。

  101 Switching Protocol

  此代码作为对来自客户端的升级请求标头的响应而发送,并指示服务器正在切换到的协议。

  102 Processing (WebDAV)

  此代码表示服务器已收到并正在处理请求,但还没有可用的响应。

  103 Early Hints

  此状态代码主要用于链接头,允许用户代理在服务器准备响应时开始预加载资源。

  2、Successful responses

  200 OK

  请求已成功。成功的意义取决于HTTP方法:

  GET:资源已被获取并在消息体中传输。
  HEAD:实体头在消息体中。
  PUT或POST:描述操作结果的资源在消息体中传输。
  TRACE:消息体包含服务器接收到的请求消息。

  201 Created

  请求已成功,并因此创建了新资源。这通常是POST请求或某些PUT请求之后发送的响应。

  202 Accepted

  已收到请求,但尚未采取行动。它是不确定的,因为在HTTP中没有办法稍后发送一个异步响应来指示请求的结果。它适用于另一个进程或服务器处理请求的情况,或者用于批处理。

  203 Non-Authoritative Information

  此响应代码表示返回的元信息与从源服务器获得的不完全相同,而是从本地或第三方副本收集的。这主要用于另一个资源的镜像或备份。除该特定情况外,“200OK”响应优先于此状态。

  204 No Content

  没有要为此请求发送的内容,但标头可能有用。用户代理可以用新的头更新它为此资源缓存的头。

  205 Reset Content

  当从客户端发送范围标头以仅请求部分资源时,将使用此响应代码

  206 Partial Content

  当从客户端发送范围标头以仅请求部分资源时,将使用此响应代码

  207 Multi-Status (WebDAV)

  传递有关多个资源的信息,用于可能需要多个状态代码的情况。

  208 Already Reported (WebDAV)

  在a内部使用<达夫:propstat>元素,以避免重复枚举同一集合的多个绑定的内部成员。

  226 IM Used (HTTP Delta encoding)

  服务器已完成对资源的GET请求,响应是应用于当前实例的一个或多个实例操作结果的表示。

  3、Redirection messages

  300 Multiple Choice

  请求有多个可能的响应。用户代理或用户应选择其中一个。(没有选择其中一个响应的标准化方法,但是建议使用指向这些可能性的HTML链接,以便用户选择。)

  301 Moved Permanently

  请求资源的URL已永久更改。新的URL在响应中给出。

  302 Found

  此响应代码表示请求资源的URI已临时更改。将来可能会对URI进行进一步的更改。因此,客户机在以后的请求中应该使用相同的URI

  303 See Other

  服务器发送此响应以指示客户端通过get请求在另一个URI处获取请求的资源

  304 Not Modified

  这用于缓存目的。它告诉客户机响应尚未修改,因此客户机可以继续使用相同的缓存版本的响应。

  305 Use Proxy

  在以前版本的HTTP规范中定义的,用于指示请求的响应必须由代理访问。由于涉及代理的带内配置的安全问题,它已被弃用。

  306 unused

  此响应代码不再使用;它只是保留的。它在以前版本的HTTP/1.1规范中使用过。

  307 Temporary Redirect

  服务器发送此响应以指示客户机使用与前一个请求中使用的方法相同的方法从另一个URI获取请求的资源。这与302找到的HTTP响应代码具有相同的语义,只是用户代理不能更改所使用的HTTP方法:如果在第一个请求中使用了POST,则必须在第二个请求中使用POST。

  308 Permanent Redirect

  这意味着资源现在永久位于另一个URI上,由Location:HTTP响应头指定。这与301移动的永久HTTP响应代码具有相同的语义,只是用户代理不能更改所使用的HTTP方法:如果在第一个请求中使用了POST,则必须在第二个请求中使用POST。

  4、Client error responses

  400 Bad Request

  由于语法无效,服务器无法理解请求。

  401 Unauthorized

  “未经授权的响应”在语义上是指“未经授权的响应”。也就是说,客户机必须对自己进行身份验证才能获得请求的响应。

  402 Payment Required

  此响应代码保留供将来使用。创建此代码的最初目的是将其用于数字支付系统,但是此状态代码很少使用,并且不存在标准约定。

  403 Forbidden

  客户端没有对内容的访问权限;也就是说,它是未经授权的,因此服务器拒绝提供所请求的资源。与401不同的是,服务器知道客户机的身份。

  404 Not Found

  服务器找不到请求的资源。在浏览器中,这意味着无法识别URL。在API中,这也意味着端点是有效的,但资源本身不存在。服务器也可以发送此响应而不是403,以向未经授权的客户端隐藏资源的存在。这个响应代码可能是最著名的一个,因为它经常出现在web上

  405 Method Not Allowed

  服务器知道请求方法,但已被禁用,无法使用。例如,API可能禁止删除资源。两个必需的方法GET和HEAD决不能被禁用,并且不应返回此错误代码。

  406 Not Acceptable

  当web服务器在执行服务器驱动的内容协商后,未找到任何符合用户代理给定条件的内容时,将发送此响应。

  407 Proxy Authentication Required

  这与401类似,但身份验证需要由代理完成。

  408 Request Timeout

  此响应由一些服务器在空闲连接上发送,即使客户机之前没有任何请求。这意味着服务器要关闭这个未使用的连接。由于一些浏览器(如Chrome、firefox27+或IE9)使用HTTP预连接机制来加快浏览速度,所以使用这种响应的次数要多得多。还要注意,有些服务器只是关闭连接而不发送此消息

  409 Conflict

  当请求与服务器的当前状态冲突时发送此响应。

  410 Gone

  当请求的内容已从服务器中永久删除且没有转发地址时,将发送此响应。客户机应删除其缓存和到资源的链接。HTTP规范打算将此状态代码用于“限时促销服务”。API不应该被迫用此状态代码指示已删除的资源。

  411 Length Required

  服务器拒绝了请求,因为未定义内容长度标头字段,而服务器需要它。

  412 Precondition Failed

  客户机在其标头中指出了服务器不满足的先决条件。

  413 Payload Too Large

  请求实体大于服务器定义的限制;服务器可能会关闭连接或返回重试后标头字段。

  414 URI Too Long

  客户端请求的URI比服务器愿意解释的长

  415 Unsupported Media Type

  服务器不支持请求数据的媒体格式,因此服务器拒绝该请求。

  416 Range Not Satisfiable

  无法实现请求中的range header字段指定的范围;该范围可能超出了目标URI的数据大小

  5、Server error responses

  500 Internal Server Error

  服务器遇到了不知道如何处理的情况。

  501 Not Implemented

  服务器不支持请求方法,因此无法处理。服务器需要支持的唯一方法(因此不能返回此代码)是GET和HEAD。

  502 Bad Gateway

  此错误响应意味着服务器作为网关来获取处理请求所需的响应时,得到的响应无效。

  

原文地址:https://www.cnblogs.com/xjf125/p/13815037.html