HTTP Status 请求状态码

介绍

HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。

常见状态码

2xx 成功类型

2开头的状态码代表服务器能理解请求并进行了处理。

200 OK 成功返回

这是最常见的状态码,正常返回页面或者接口返回数据时都是使用这个状态码作为成功状态。

100 Continue 继续

一个临时响应状态,通知客户端继续发送请求,用于类似分包上传的情况,全部请求完成后需要发送一个最终响应状态,如上述的200。

3xx 重定向类型

表示要完成请求需要另外的操作,一般是会进行重定向。

301 Moved Permanently 资源永久移位

请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一。

302 Move Temporarily 资源临时移位

请求的资源临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。。

304 Not Modified 从缓存中获取

如果客户端发送了一个带条件的 GET 请求且该请求已被允许,而文档的内容自上次访问并没有改变,则服务器应当返回这个状态码。

4xx 客户端错误类型

表示客户端的问题导致请求不被接受。

400 Bad Request 错误请求

语义有误或请求参数有误,服务器无法理解。

401 Unauthorized 缺少验证

当前请求需要进行用户验证,当缺少Authorization证书信息或者证书无效就会触发。

403 Forbidden 禁止访问

表示请求被禁止,一般是某些资源不够权限或者默认禁止访问的文件。

404 No Found 找不到资源

常见的一种错误,一般是找不到路由对应的页面等情况。

5xx 服务器错误类型

500 Internal Server Error 无法完成请求

服务器内部有错误,无法处理请求,一般是程序内部错误。

503 Service Unavailable 服务不可用

服务器维护或者过载,无法处理请求。

更多状态码

101 Switching Protocols 切换协议

要求客户端切换成不同的协议来完成请求,例如HTTP切换到HTTPS,或者HTTP切换到Websocket等

102 Processing 执行中

代表处理将被继续执行

202 Accepted 接受请求

服务器已接受请求,但尚未处理。非常适合异步消息队列的处理方式,表示本次请求结果将以另外的回调链接或者其他方式返回。

203 Non-Authoritative Information

服务器已成功处理了请求,但返回的实体头部元信息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。当前的信息可能是原始版本的子集或者超集。例如,包含资源的元数据可能导致原始服务器知道元信息的超集。使用此状态码不是必须的,而且只有在响应不使用此状态码便会返回200 OK的情况下才是合适的。

204 No Content 无内容

服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。如果存在这些头部信息,则应当与所请求的变量相呼应。

205 Reset Content

服务器成功处理了请求,且没有返回任何内容。但是与204响应不同,返回此状态码的响应要求请求者重置文档视图。该响应主要是被用于接受用户输入后,立即重置表单,以便用户能够轻松地开始另一次输入。
与204响应一样,该响应也被禁止包含任何消息体,且以消息头后的第一个空行结束。

206 Partial Content

服务器已经成功处理了部分 GET 请求。类似于 FlashGet 或者迅雷这类的 HTTP下载工具都是使用此类响应实现断点续传或者将一个大文档分解为多个下载段同时下载。
该请求必须包含 Range 头信息来指示客户端希望得到的内容范围,并且可能包含 If-Range 来作为请求条件。

207 Multi-Status

由WebDAV(RFC 2518)扩展的状态码,代表之后的消息体将是一个XML消息,并且可能依照之前子请求数量的不同,包含一系列独立的响应代码。

300 Multiple Choices

被请求的资源有一系列可供选择的回馈信息,每个都有自己特定的地址和浏览器驱动的商议信息。用户或浏览器能够自行选择一个首选的地址进行重定向。

303 See Other

对应当前请求的响应可以在另一个 URL 上被找到,而且客户端应当采用 GET 的方式访问那个资源。这个方法的存在主要是为了允许由脚本激活的POST请求输出重定向到一个新的资源。这个新的 URI 不是原始资源的替代引用。同时,303响应禁止被缓存。当然,第二个请求(重定向)可能被缓存。

305 Use Proxy

被请求的资源必须通过指定的代理才能被访问。Location 域中将给出指定的代理所在的 URI 信息,接收者需要重复发送一个单独的请求,通过这个代理才能访问相应资源。只有原始服务器才能建立305响应。
注意:RFC 2068中没有明确305响应是为了重定向一个单独的请求,而且只能被原始服务器建立。忽视这些限制可能导致严重的安全后果。

306 Switch Proxy

在最新版的规范中,306状态码已经不再被使用。

307 Temporary Redirect

请求的资源临时从不同的URI 响应请求。
新的临时性的URI 应当在响应的 Location 域中返回。除非这是一个HEAD 请求,否则响应的实体中应当包含指向新的URI 的超链接及简短说明。

402 Payment Required

该状态码是为了将来可能的需求而预留的。

405 Method Not Allowed

请求行中指定的请求方法不能被用于请求相应的资源。该响应必须返回一个Allow 头信息用以表示出当前资源能够接受的请求方法的列表。

406 Not Acceptable

请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体。
除非这是一个 HEAD 请求,否则该响应就应当返回一个包含可以让用户或者浏览器从中选择最合适的实体特性以及地址列表的实体。

407 Proxy Authentication Required

与401响应类似,只不过客户端必须在代理服务器上进行身份验证。代理服务器必须返回一个 Proxy-Authenticate 用以进行身份询问。

408 Request Timeout

请求超时。客户端没有在服务器预备等待的时间内完成一个请求的发送。客户端可以随时再次提交这一请求而无需进行任何更改。

409 Conflict

由于和被请求的资源的当前状态之间存在冲突,请求无法完成。这个代码只允许用在这样的情况下才能被使用:用户被认为能够解决冲突,并且会重新提交新的请求。该响应应当包含足够的信息以便用户发现冲突的源头。

410 Gone

被请求的资源在服务器上已经不再可用,而且没有任何已知的转发地址。这样的状况应当被认为是永久性的。

411 Length Required

服务器拒绝在没有定义 Content-Length 头的情况下接受请求。

412 Precondition Failed

服务器在验证在请求的头字段中给出先决条件时,没能满足其中的一个或多个。这个状态码允许客户端在获取资源时在请求的元信息(请求头字段数据)中设置先决条件,以此避免该请求方法被应用到其希望的内容以外的资源上。

413 Request Entity Too Large

服务器拒绝处理当前请求,因为该请求提交的实体数据大小超过了服务器愿意或者能够处理的范围。此种情况下,服务器可以关闭连接以免客户端继续发送此请求。

414 Request-URI Too Long

请求的URI 长度超过了服务器能够解释的长度,因此服务器拒绝对该请求提供服务。这比较少见,通常的情况包括:

415 Unsupported Media Type

对于当前请求的方法和所请求的资源,请求中提交的实体并不是服务器中所支持的格式,因此请求被拒绝。

416 Requested Range Not Satisfiable

如果请求中包含了 Range 请求头,并且 Range 中指定的任何数据范围都与当前资源的可用范围不重合,同时请求中又没有定义 If-Range 请求头,那么服务器就应当返回416状态码。

417 Expectation Failed

在请求头 Expect 中指定的预期内容无法被服务器满足,或者这个服务器是一个代理服务器,它有明显的证据证明在当前路由的下一个节点上,Expect 的内容无法被满足。

418 I’m a teapot

421 Misdirected Request

请求被指向到无法生成响应的服务器(比如由于连接重复使用)

422 Unprocessable Entity

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

423 Locked

当前资源被锁定。

424 Failed Dependency

由于之前的某个请求发生的错误,导致当前请求失败,

425 Too Early

代表服务器不愿意冒风险来处理该请求,原因是处理该请求可能会被“重放”,从而造成潜在的重放攻击。

426 Upgrade Required

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

449 Retry With

由微软扩展,代表请求应当在执行完适当的操作后进行重试。

451 Unavailable For Legal Reasons

该请求因法律原因不可用。

501 Not Implemented

服务器不支持当前请求所需要的某个功能。当服务器无法识别请求的方法,并且无法支持其对任何资源的请求。

502 Bad Gateway

作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。

504 Gateway Timeout

作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI标识出的服务器,例如HTTP、FTP、LDAP)或者辅助服务器(例如DNS)收到响应。

505 HTTP Version Not Supported

服务器不支持,或者拒绝支持在请求中使用的 HTTP 版本。这暗示着服务器不能或不愿使用与客户端相同的版本。响应中应当包含一个描述了为何版本不被支持以及服务器支持哪些协议的实体。

506 Variant Also Negotiates

代表服务器存在内部配置错误:被请求的协商变元资源被配置为在透明内容协商中使用自己,因此在一个协商处理中不是一个合适的重点。

507 Insufficient Storage

服务器无法存储完成请求所必须的内容。这个状况被认为是临时的。

509 Bandwidth Limit Exceeded

服务器达到带宽限制。这不是一个官方的状态码,但是仍被广泛使用。

510 Not Extended

获取资源所需要的策略并没有被满足。

600 Unparseable Response Headers

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
HttpStatus类是Spring框架中定义的一个枚举类,它封装了HTTP响应状态码及其对应的原因短语。下面是HttpStatus类中所有的状态码: - 1xx(信息类):表示接收的请求正在处理。 - 100 CONTINUE:继续请求,一般在发送POST请求时,已经发送了HTTP header之后服务端将返回此信息,表示确认,之后发送具体参数信息。 - 101 SWITCHING_PROTOCOLS:切换协议,表示正在采用的协议将被更改。 - 102 PROCESSING:正在处理请求,后续响应将包含具体的结果。 - 103 EARLY_HINTS:提示信息,可让客户端在不等待响应的情况下开始预加载资源。 - 2xx(成功):表示请求已经被成功接收、理解、接受。 - 200 OK:请求成功。 - 201 CREATED:已创建。成功请求并创建了新的资源。 - 202 ACCEPTED:已接受。请求已经被接受,但是还未进行处理。 - 203 NON_AUTHORITATIVE_INFORMATION:非授权信息。请求成功,但返回的meta信息不在原始的服务器,而是一个副本。 - 204 NO_CONTENT:无内容。服务器成功处理,但未返回内容。一般用于删除操作。 - 205 RESET_CONTENT:重置内容。服务器成功处理,但未返回内容。与204响应不同,此响应要求请求者重置文档视图。 - 206 PARTIAL_CONTENT:部分内容。服务器成功处理了部分GET请求。 - 207 MULTI_STATUS:多种状态服务器返回多种状态。 - 208 ALREADY_REPORTED:已报告。服务器已经接收到请求,但是尚未完成处理。 - 226 IM_USED:使用了。服务器已经完成了请求的处理。 - 3xx(重定向):表示需要客户端进一步操作才能完成请求。 - 300 MULTIPLE_CHOICES:多种选择。请求的资源有多种表示方式,服务器可以根据请求者的首选项进行返回。 - 301 MOVED_PERMANENTLY:永久移动。请求的资源已被永久移动到新URI,返回信息会包含新的URI。 - 302 FOUND:临时移动。请求的资源已被临时移动到新URI,返回信息会包含新的URI。 - 303 SEE_OTHER:查看其它地址。请求者应当对不同的位置使用单独的GET请求来检索响应时,服务器返回此代码。 - 304 NOT_MODIFIED:未修改。请求的资源未修改,可以使用缓存版本。 - 305 USE_PROXY:使用代理。请求者只能使用代理访问请求的资源。 - 306 UNUSED:已经被废弃的HTTP状态码。 - 307 TEMPORARY_REDIRECT:临时重定向。请求的资源已被临时移动到新URI,返回信息会包含新的URI。 - 308 PERMANENT_REDIRECT:永久重定向。请求的资源已被永久移动到新URI,返回信息会包含新的URI。 - 4xx(客户端错误):表示客户端提交的请求有错误。 - 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 URI_TOO_LONG:URI过长。请求的URI超过服务器能够解释的长度,因此服务器拒绝对该请求提供服务。 - 415 UNSUPPORTED_MEDIA_TYPE:不支持的媒体类型。请求的格式不受请求页面的支持。 - 416 RANGE_NOT_SATISFIABLE:范围不符合要求。由于请求的范围无效,请求无法满足。 - 417 EXPECTATION_FAILED:期望失败。服务器未满足"期望"请求标头字段的要求。 - 418 I_AM_A_TEAPOT:我是茶壶。服务器拒绝尝试用壶煮咖啡。 - 421 MISDIRECTED_REQUEST:请求错误。服务器无法识别请求的方案。 - 422 UNPROCESSABLE_ENTITY:无法处理的实体。请求格式正确,但是由于含有语义错误,无法响应。 - 423 LOCKED:被锁定。当前资源被锁定。 - 424 FAILED_DEPENDENCY:依赖失败。请求失败,请求所依赖的另一个请求也失败。 - 425 TOO_EARLY:太早。请求头中指定的时间戳与服务器不符。 - 426 UPGRADE_REQUIRED:需要升级。客户端应当切换到TLS/1.0。 - 428 PRECONDITION_REQUIRED:要求先决条件。该请求要求客户端提供先决条件。 - 429 TOO_MANY_REQUESTS:过多的请求请求过多,服务器无法处理。 - 431 REQUEST_HEADER_FIELDS_TOO_LARGE:请求头字段过大。请求头超出服务器的限制。 - 451 UNAVAILABLE_FOR_LEGAL_REASONS:因法律原因不可用。该请求因法律原因不可用。 - 5xx(服务器错误):表示服务器在处理请求的过程中发生了错误。 - 500 INTERNAL_SERVER_ERROR:内部服务器错误。请求未完成。服务器遇到错误,无法完成请求。 - 501 NOT_IMPLEMENTED:未实现。服务器不支持请求的功能。 - 502 BAD_GATEWAY:错误的网关。服务器作为网关或代理,从上游服务器收到无效响应。 - 503 SERVICE_UNAVAILABLE:服务不可用。服务器当前无法处理请求请求过载。 - 504 GATEWAY_TIMEOUT:网关超时。服务器作为网关或代理,但是没有及时从上游服务器收到请求。 - 505 HTTP_VERSION_NOT_SUPPORTED:HTTP版本不受支持。服务器不支持请求HTTP协议的版本。 - 506 VARIANT_ALSO_NEGOTIATES:变体也协商。服务器有一个内部配置错误:对请求的透明内容协商导致循环引用。 - 507 INSUFFICIENT_STORAGE:存储不足。服务器无法完成存储请求所需的内容。 - 508 LOOP_DETECTED:检测到循环。服务器检测到无限循环。 - 510 NOT_EXTENDED:不扩展。获取资源所需的策略并没有被满足。 - 511 NETWORK_AUTHENTICATION_REQUIRED:需要网络认证。客户端需要进行身份验证才能获得网络访问权限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿卢说他遇到阿玮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值