常用/不常用的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