所有WIKI > R字母 > REST HTTP状态码对照表

REST HTTP状态码对照表

对于每个HTTP请求,服务器都会返回一个状态代码,指示请求的处理状态。在本文中,我们将看到一些常用的HTTP状态代码。在以后设计 RESTful API 服务时,对状态代码的基本了解肯定会对我们有所帮助:

REST API使用的一些基本概念:

REST API – Payload
✅  REST API – HTTP Methods
✅  10大REST API常见问题?

1xx Informational/信息

这一系列状态代码表示信息内容。这意味着已收到请求并正在处理中。以下是常用的信息状态代码:

100 Continue/继续:

此代码表示服务器已收到请求标头,客户端现在可以发送正文内容。在这种情况下,客户端首先发出请求(使用Expect:100-continue标头),以检查它是否可以从部分请求开始。然后,服务器可以响应100继续(OK)或417期望失败(否)以及适当的原因。

101 Switching Protocols/交换协议:

此代码表示服务器可以处理来自客户端的协议交换机请求。

102 Processing/处理:

此代码是一个信息状态代码,用于长期运行处理,以防止客户端超时。这告诉客户等待未来的响应,该响应将具有实际响应主体。

2xx Success/成功

这一系列状态代码表示请求的成功处理。本类中一些常用的状态代码如下:

200 OK/确定:

此代码表示请求成功,响应内容已酌情返回给客户端。

201 Created/创建:

此代码表示请求成功,并创建了新资源。

204 No Content/无内容:

此代码表示请求已成功处理,但此请求没有返回值。例如,您可能会找到此类状态代码来响应资源的删除。

3xx Redirection/重定向

这一系列状态代码表明,客户端需要执行进一步的操作,以在逻辑上结束请求。本类中常用的状态代码如下:

304 Not Modified/未修改:

此状态表示自上次访问以来,该资源没有被修改过。仅当客户端通过将请求标头设置为If-Modified-Since或If-None-Match时允许时,才会返回此代码。客户可以根据此状态代码采取适当行动。

4xx Client Error/客户端错误

这一系列状态代码表示处理请求时出错。本类中一些常用的状态代码如下:

400 Bad Request/不良请求:

此代码表示服务器由于请求中的语法格式错误而无法处理请求。客户端可以在更正请求后再试一次。

401 Unauthorized/未经授权:

此代码表示资源需要身份验证。客户端可以使用适当的身份验证再次尝试。

403 Forbidden/禁止:

此代码表示服务器拒绝响应请求,即使请求有效。如果请求不是HEAD方法,原因将列在正文内容中。

404 Not Found/未找到:

此代码表示在请求中指定的位置找不到请求的资源。

405 Method Not Allowed/方法不允许:

此代码表示请求中指定的HTTP方法不允许在URI标识的资源上使用。

408 Request Timeout/请求超时:

此代码表示客户端未能在服务器上设置的时间窗口内响应。

409 Conflict/冲突:

此代码表示请求无法完成,因为它与在资源上建立的一些规则冲突,例如验证失败。

5xx Server Error/服务器错误

此系列状态代码表示在处理有效请求时服务器故障。以下是本类中常用的状态代码之一:

500 Internal Server Error/内部服务器错误:

此代码指示通用错误消息,并指示服务器上发生意外错误,请求无法完成。

501(Not Implemented/未实施):

服务器要么无法识别请求方法,要么无法满足请求。通常,这意味着未来的可用性(例如,Web服务API的新功能)。

HTTP Status Codes汇总

1×× 信息

  • 100 Continue/继续
  • 101 Switching Protocols/交换协议
  • 102 Processing/处理

2×× 成功

  • 200 OK/好
  • 201 Created/创建
  • 202 Accepted/接受
  • 203 Non-authoritative Information/非权威信息
  • 204 No Content/无内容
  • 205 Reset Content/重置内容
  • 206 Partial Content/部分内容
  • 207 Multi-Status/多状态
  • 208 Already Reported/已报告
  • 226 IM Used/IM使用

3×× 重定向

  • 300 Multiple Choices/多项选择
  • 301 Moved Permanently/永久移动
  • 302 Found/找到
  • 303 See Other/查看其他
  • 304 Not Modified/未修改
  • 305 Use Proxy/使用代理
  • 307 Temporary Redirect/临时重定向
  • 308 Permanent Redirect/永久重定向

4××客户端错误

  • 400 Bad Request/错误请求
  • 401 Unauthorized/未经授权
  • 402 Payment Required/需要付款
  • 403 Forbidden/禁止
  • 404 Not Found/未找到
  • 405 Method Not Allowed/不允许方法
  • 406 Not Acceptable/不可接受
  • 407 Proxy Authentication Required/需要代理身份验证
  • 408 Request Timeout/请求超时
  • 409 Conflict/冲突
  • 410 Gone/走了
  • 411 Length Required/所需长度
  • 412 Precondition Failed/先决条件失败
  • 413 Payload Too Large/有效载荷太大
  • 414 Request-URI Too Long/请求-URI太长
  • 415 Unsupported Media Type/不受支持的媒体类型
  • 416 Requested Range Not Satisfiable/请求的范围不令人满意
  • 417 Expectation Failed/预期失败
  • 418 I’m a teapot/
  • 421 Misdirected Request/误导请求
  • 422 Unprocessable Entity/不可处理实体
  • 423 Locked/锁定
  • 424 Failed Dependency/依赖失败
  • 426 Upgrade Required/需要升级
  • 428 Precondition Required/需要先决条件
  • 429 Too Many Requests/请求太多
  • 431 Request Header Fields Too Large/请求Header字段太大
  • 444 Connection Closed Without Response/连接关闭,没有响应
  • 451 Unavailable For Legal Reasons/因法律原因不可用
  • 499 Client Closed Request/客户已关闭请求

5××服务器错误

  • 500 Internal Server Error/内部服务器错误
  • 501 Not Implemented/未实施
  • 502 Bad Gateway/坏网关
  • 503 Service Unavailable/服务不可用
  • 504 Gateway Timeout/网关超时
  • 505 HTTP Version Not Supported/不支持HTTP版本
  • 506 Variant Also Negotiates/变体也进行谈判
  • 507 Insufficient Storage/存储不足
  • 508 Loop Detected/检测到循环
  • 510 Not Extended/未扩展
  • 511 Network Authentication Required/需要网络身份验证
  • 599 Network Connect Timeout Error/网络连接超时错误

参考资料

原文: REST API – HTTP Status Codes
Mozilla HTTP 响应状态码
表格化,更易读的HTTP状态码