HTTP 协议状态码-5XX
5XX 指的是请求出错了,而且很有可能是服务端侧的异常。下面定义的状态码有时候也只能反应一个大概情况,而不一定确切的,主要是协助用户排查问题。
500 Internal Server Error
这是一个很常见的错误码,但这个错误码比较笼统,服务内容异常情况非常多,可能是代码问题,也可能是服务器资源问题等。如果是 500 的错误异常的话,后端开发的接口通常会把更详细的错误内容放在响应消息体里面。
501 Not Implemented
服务端不支持当前请求的某些功能,跟客户端异常 405
有点相似,只是 405
的情况侧重在客户端请求 Method 错误,而 501
侧重在,客户端请求的方法没问题,服务端本身有规划这个功能,但是还未实现。
502 Bad Gateway
Gateway 网关,软件架构中的网关跟网络路由器里面的网关有所不同,不能混为一体。软件架构的网关通常指的是靠近用户侧用于分发请求的代理服务,如 Nginx 作为代理接收请求,再分发到后面的具体服务提供者。
502 的状态指的是代理服务器正常,但是代理要去访问源站服务提供者发生错误了,代理服务器接收到无效的应答。
503 Service Unavailable
由于临时的服务器维护或者过载,服务器当前无法处理请求。这个状况是临时的,并且将在一段时间以后恢复。如果能够预计延迟时间,那么响应中可以包含一个 Retry-After 头用以标明这个延迟时间。
HTTP/1.1 503 Service Unavailable
Content-Type text/plain
Retry-After: 1800
504 Gateway Timeout
网关请求源站时间超时。
505 HTTP Version Not Supported
服务器不支持请求中所指明的HTTP版本。
506 Variant Also Negotiates
一般客户端和服务端内容格式协商是在请求头部添加一系列的 Accept-*
首部字段。当服务端有多个可选择的资源时会返回 300 Multiple Choices
。当服务端由于某种异常无法提供客户端的请求项时,它可能会努力下,尝试返回一些资源选项让客户端去选。
507 Insufficient Storage
告诉客户端他们的 POST
或者 PUT
请求无法被成功,可能是因为传输的实体太大,服务端的磁盘有限。
509 Bandwidth Limit Exceeded
服务器达到带宽限制。
510 Not Extended
RFC 中一个实验性的协议,服务端要求客户端使用一个扩展性的协议,但是客户端没有。目前基本没用到。
511 Network Authentication Required
告诉客户端连接的网络需要认证,可能所连接的 Wi-Fi
还没经过认证。