常用/不常用的HTTP状态码

自己平时整理的相关HTTP状态码

  • 1xx:相关信息
  • 2xx:操作成功
  • 3xx:重定向
  • 4xx:客户端错误
  • 5xx:服务器错误

1xx状态码

  • 100: Continue
  • 101: Switching Protocols
  • 102: Processing RFC2518
  • 103: Early Hints

2xx状态码

  • 200: OK
  • 201: Created 表示生成了新的资源
  • 202: Accepted 表示服务器已经收到请求,但还未进行处理,会在未来再处理,通常用于异步操作
  • 203: Non-Authoritative Information
  • 204: No Content 表示资源已经不存在,已经删除,可用于DELETE请求
  • 205: Reset Content
  • 206: Partial Content
  • 207: Multi-Status RFC4918
  • 208: Already Reported RFC5842
  • 226: IM Used RFC3229

3xx状态码

  • 300: Multiple Choices
  • 301: 永久重定向(API不用考虑)
  • 302: Found 临时重定向(API不用考虑)
  • 303: See Other,表示参考另一个 URL,类似于302/307暂时重定向,可用于POST/PUT/DELETE请求
  • 304: Not Modified
  • 305: Use Proxy
  • 307: Temporary Redirect 临时重定向
  • 308: Permanent Redirect RFC7238

4xx状态码

4xx状态码表示客户端错误

  • 400: Bad Request: 服务器不理解客户端的请求,未做任何处理
  • 401: Unauthorized: 用户未提供身份验证凭据,或者没有通过身份验证
  • 402: Payment Required
  • 403: Forbidden: 用户通过了身份验证,但是不具有访问资源所需的权限
  • 404: Not Found:所请求的资源不存在,或不可用
  • 405: Method Not Allowed:用户已经通过身份验证,但是所用的 HTTP 方法不在他的权限之内
  • 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: URI Too Long
  • 415: Unsupported Media Type:客户端要求的返回格式不支持。比如,API 只能返回 JSON 格式,但是客户端要求返回 XML 格式
  • 416: Range Not Satisfiable
  • 417: Expectation Failed
  • 418: I'm a teapot RFC2324
  • 421: Misdirected Request RFC7540
  • 422: Unprocessable Entity:RFC4918 客户端上传的附件无法处理,导致请求失败
  • 423: Locked RFC4918
  • 424: Failed Dependency RFC4918
  • 425: Too Early RFC-ietf-httpbis-replay-04
  • 426: Upgrade Required RFC2817
  • 428: Precondition Required RFC6585
  • 429: Too Many Requests:RFC6585 客户端的请求次数超过限额
  • 431: Request Header Fields Too Large RFC6585
  • 451: Unavailable For Legal Reasons RFC7725

5xx状态码

5xx状态码表示服务端错误。一般来说,API 不会向用户透露服务器的详细信息,所以只要两个状态码就够了

  • 500: Internal Server Error:客户端请求有效,服务器处理时发生了意外
  • 501: Not Implemented
  • 502: Bad Gateway
  • 503: Service Unavailable:服务器无法处理请求,一般用于网站维护状态
  • 504: Gateway Timeout
  • 505: HTTP Version Not Supported
  • 506: Variant Also Negotiates RFC2295
  • 507: Insufficient Storage RFC4918
  • 508: Loop Detected RFC5842
  • 510: Not Extended RFC2774
  • 511: Network Authentication Required RFC6585