2019-01-14 HTTP状态码

HTTP状态码(HTTP status codes)是用以表示服务器HTTP响应状态的三位代码,状态码的第一个数字代表了五个标准响应状态之一:

  • 1xx (消息,Informational Response): 请求已经被服务器接收,继续处理;
  • 2xx (成功,Successful): 请求已经被服务器成功接收、理解、接受;
  • 3xx (重定向,Redirection):需要更进一步的操作来完成请求;
  • 4xx (客户端错误,Client Error): 请求自身有语法错误或者无法实现,是请求本身的错误;
  • 5xx (服务器错误,Server Error): 服务器未能实现合法的请求,是服务器本身的错误而不是请求出错。

常见的HTTP状态码

200 OK

成功的HTTP请求的标准响应,实际的响应将取决于请求方法。如:在GET请求中,响应将包含与所请求的资源相对应的实体。

400 Bad Request

由于请求自身的错误(如:请求本身有语法错误,请求参数有误),服务器无法理解请求或者不会处理请求。

403 Fobidden

请求是有效的,但是服务器拒绝提供服务。用户可能没有请求资源的必要的权限,或者需要某种账户。

404 Not Found

找不到所请求的资源。

502 Bad Gateway

充当网关或者代理的服务器尝试执行请求时从上游服务器收到的无效响应。

503 Service Unavailable

服务器因为过载或维护而不可用。一般而言,这是一种临时状态。

504 Gateway Timeout

充当网关或代理的服务器未从上游服务器收到及时的响应。

HTTP状态码总结(总结自维基百科)

1xx 消息(Informational Response)

100 Continue

服务器已经收到了请求头,客户端应该继续发送请求正文(如果需要的话,例如POST请求)。

101 Switching Protocols

请求者已经要求服务器切换协议,服务器已经同意并且准备切换。

102 Processing

由WebDAV扩展的状态码。WebDAV请求可能包含许多涉及文件操作的子请求,需要很长时间才能完成。此状态码表示服务器已收到并正在处理请求,但尚未提供响应,可以防止客户端超时和假设请求丢失。

103 Early Hints

用于在最终HTTP响应之前返回一些响应头。

2xx 成功(Success)

200 OK

成功的HTTP请求的标准响应,实际的响应将取决于请求方法。如:在GET请求中,响应将包含与所请求的资源相对应的实体。

201 Created

请求已经被实现,新的资源已经依据请求的需要而建立。

202 Accepted

服务器已经接受请求,但请求尚未被处理,该请求最终可能不会被处理。

203 Non-Authoritative Information

作为转换代理的服务器(如:网络加速器)从信息来源接收200 OK,但返回的是原始响应的修改版本。

204 No Content

服务器成功处理了请求,但未返回任何内容。

205 Reset Content

服务器成功处理了请求,但未返回任何内容。与204 No Content不同,此响应要求请求者重置文档视图。

206 Partial Content

由于客户端发送了的请求头中带有Range参数,服务器仅提供了部分资源(字节服务)。HTTP客户端使用Range参数来进行断点续传或将一个大文档分解为多个下载段同时下载。

207 Multi-Status

响应体是一条XML消息,可以包含许多单独的响应代码,具体取决于之前的的子请求数量。

208 Already Reported

一个DAV绑定的成员已经在响应的前一部分中枚举,并且不再被包括。

226 IM Used

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

3xx 重定向(Redirection)

300 Multiple Choices

表示客户端可以选择所请求资源的多个选项。例如,此状态码可用于显示多个视频格式选项,列出具有不同文件扩展名的文件。

301 Moved Permanently

请求的资源已经永久移动到新位置,应将此请求和将来所有的请求定向到给定的URI。

302 Found (Previously "Moved temporarily")

告诉客户端查看另一个URL。已被303和307取代。

303 See Other

可以使用GET方法在另一个URI下找到对请求的响应。当收到POST(或PUT,DELETE)响应时,客户端应该假设服务器已收到数据,并应向给定的URI发出新的GET请求。

304 Not Modified

自从上次请求后,请求的网页未修改过。在这种情况下,不需要重新传输资源,因为客户端仍然具有先前下载的副本。

305 Use Proxy

请求的资源仅可通过代理获得,代理的地址在响应中提供。

306 Switch Proxy

这种响应已经不再使用。原意是“后续请求应使用指定的代理”。

307 Temporary Redirect

在这种情况下,请求应该使用另一个URI来重复; 但是,未来的请求仍应使用原始URI。与历史上实现302的方式相反,在重新发出原始请求时不允许更改请求方法。例如,应使用另一个POST请求重复POST请求。

308 Permanent Redirect

应使用另一个URI重复请求和将来所有的请求。307和308与302和301的行为相同,但不允许HTTP方法改变。

4xx 客户端错误(Client Error)

400 Bad Request

由于请求自身的错误(如:请求本身有语法错误,请求参数有误),服务器无法理解请求或者不会处理请求。

401 Unauthorized

与403 Forbidden类似,但专门用于需要HTTP基本认证且已失败或尚未提供的情况。

402 Payment Required

保留以供将来使用。 最初的用意是这个状态码可能被用作某种形式的数字现金或支付方案的一部分。

403 Fobidden

请求是有效的,但是服务器拒绝提供服务。用户可能没有请求资源的必要的权限,或者需要某种账户。

404 Not Found

找不到所请求的资源。

405 Method Not Allowed

请求的资源不支持该请求方法。

406 Not Acceptable

请求的资源已经找到,但它的MIME类型和客户在Accpet头中所指定的不兼容。

407 Proxy Authentication Required

客户端必须首先使用代理进行身份验证。

408 Request Timeout

服务器等待请求超时。

409 Conflict

表示由于资源的当前状态发生冲突而无法处理请求,服务器在完成请求时发生冲突。

410 Gone

表示请求的资源不可用,并且不再可用。收到410状态代码后,客户端将来不应该请求该资源。 搜索引擎等客户应该从索引中删除资源。

411 Length Required

请求未指定其内容的长度,而这又是请求的资源所需的。

412 Precondition Failed

服务器不满足请求者对请求提出的前提条件之一。

413 Payload Too Large

请求太大以至于服务器无法处理。

414 URI Too Long

提供的URI太长以至于服务器无法处理。

415 Unsupported Media Type

请求正文具有服务器或资源不支持的媒体类型。

416 Range Not Satisfiable

客户端请求文件的一部分,但服务器无法提供该部分。

417 Expectation Failed

在请求头Expect中指定的预期内容无法被服务器满足。

418 I'm a teapot

这一状态码是在1998年作为IETF的传统愚人节笑话, 并不需要在真实的HTTP服务器中定义。当一个控制茶壶的HTCPCP收到BREW或POST指令要求其煮咖啡时应当传回此错误。这个HTTP状态码在某些网站与项目中用作彩蛋。

421 Misdirected Request

该请求针对的是无法生成响应的服务器。

422 Unprocessable Entity

请求格式正确,但由于语义错误而无法响应。

423 Locked

正在访问的资源已被锁定。

424 Failed Dependency

请求失败,因为它依赖于另一个已经失败的请求。

426 Upgrade Required

客户端应切换到如TLS / 1.0。

428 Precondition Required

先决条件是客户端发送 HTTP 请求时,必须要满足的一些预设条件。428表示客户端必须发送含有先决条件的请求头才能执行该请求。

429 Too Many Requests

用户在给定的时间内发送了太多请求。

431 Request Header Fields Too Large

服务器无法处理请求,因为请求头太大。

451 Unavailable For Legal Reasons

服务器运营商已收到合法要求,拒绝访问包含所请求资源的资源或资源集,即由于法律原因所请求的资源不可用。

5xx 服务器错误(Server Error)

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

客户端需要进行身份验证才能获得网络访问权限。

600 Unparseable Response Headers

源站没有返回响应头部,只返回实体内容。

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。有些 App...
    咖啡绿茶1991阅读 2,334评论 0赞 7
  • HTTP状态码的分类 HTTP状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型,后两个数字没有分类的...
    薄凉_简书阅读 673评论 0赞 1
  • HTTP状态码(HTTP Status Code)表示http服务器对与请求HTTP响应状态的3位数字代码。它由 ...
    BeeNoisy阅读 1,962评论 0赞 8
  • 1xx 消息 这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头...
    冯瑞_FR阅读 191评论 0赞 0
  • 1xx消息这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息...
    翻这个墙阅读 226评论 0赞 0

友情链接更多精彩内容