HTTP状态代码列表

来源:互联网 发布:java飞机大战子弹移动 编辑:程序博客网 时间:2024/05/18 05:18

此处对维基百科的HTTP状态码描述进行翻译,特在此处留作笔记,提供大家查看!!!

1XX信息性应答

信息响应表明该请求被收到并被理解。它是临时发出的,而请求处理继续。它提醒客户等待最终的回应。该消息仅由状态行和可选的头域组成,并由空行终止。由于HTTP / 1.0标准没有定义任何1xx状态代码,服务器不得[注1]发送1xx响应到符合HTTP / 1.0的客户端,除非在实验条件下。[4]

100继续
服务器已收到请求头,客户端应继续发送请求主体(在需要发送正文的请求的情况下(例如POST请求)。在请求不适当的标头被拒绝后,向服务器发送一个大的请求正文将是低效的。要使服务器检查请求的头部,客户端必须Expect: 100-continue在其初始请求中作为头发送,并100 Continue在发送身体之前接收状态代码。如果客户端收到403(禁止)或405(方法不允许)等错误代码,则不应发送请求的正文。响应417 Expectation Failed表明请求应该不需要重复Expect标头,因为它表示服务器不支持期望(例如,HTTP / 1.0服务器的情况)。[5]
101交换协议
请求者要求服务器切换协议,服务器同意这样做。[6]
102处理(WebDAV ; RFC 2518
WebDAV请求可能包含涉及文件操作的许多子请求,需要很长时间才能完成请求。此代码表示服务器已收到并正在处理该请求,但没有响应可用。[7]这样可以防止客户端超时,并假定请求丢失。

2XX成功

此类状态码表示客户端所请求的操作已被成功接收,理解,接受和处理。[2]

200好的
HTTP请求成功的标准响应。实际响应将取决于所使用的请求方法。在GET请求中,响应将包含与所请求资源相对应的实体。在POST请求中,响应将包含描述或包含操作结果的实体。[8]
201创建
该请求已经实现,导致创建一个新的资源。[9]
202接受
该请求已被接受处理,但处理尚未完成。请求可能或可能不会最终被执行,并且可能在处理发生时不允许。[10]
203非授权信息(自HTTP / 1.1起)
服务器是一个转换代理(例如一个Web加速器),它从原点接收到200 OK,但是返回了原始响应的修改版本。[11] [12]
204无内容
服务器成功处理了请求,并没有返回任何内容。[13]
205重置内容
服务器成功处理了请求,但不返回任何内容。与204响应不同,此响应要求请求者重置文档视图。[14]
206部分内容(RFC 7233
由于客户端发送的范围标题,服务器只提供部分资源(字节服务)。HTTP客户端使用范围标头来恢复中断的下载,或将下载分割成多个同时流。[15]
207多状态(WebDAV; RFC 4918
下面的消息体是一个XML消息,可以包含多个单独的响应代码,具体取决于多少子请求。[16]
已报告208(WebDAV; RFC 5842
DAV绑定的成员已经在(多状态)响应的前面部分中列举,并没有被再次包括。
226 IM Used(RFC 3229
服务器已经满足了资源的请求,响应是对当前实例应用的一个或多个实例操作的结果的表示。[17]

3XX重定向

此类状态码表示客户端必须采取其他操作来完成请求。许多这些状态代码用于URL重定向[2]

只有当第二个请求中使用的方法是GET或HEAD时,用户代理才可以执行没有用户交互的附加动作。用户代理可以自动重定向请求。用户代理应检测并进行干预以防止周期性重定向。[18]

300多项选择
指示客户端可以从中选择的资源(通过代理驱动的内容协商)的多个选项例如,该代码可用于呈现多个视频格式选项,列出具有不同文件名扩展名的文件,或者提供词义消歧[19]
301永久移动
这个和所有将来的请求应该被引导到给定的URI[20]
302找到
这是与标准相矛盾的行业实践的一个例子。HTTP / 1.0规范(RFC 1945)要求客户端执行临时重定向(原始描述短语为“Moved Temporarily”),[21],但流行的浏览器实现302具有303的功能。因此,HTTP / 1.1添加状态码303和307以区分两种行为。[22]然而,一些Web应用程序和框架使用302状态代码,就像它是303. [23]
303见其他(自HTTP / 1.1起)
可以使用GET方法在另一个URI下找到对请求的响应当响应于POST(或PUT / DELETE)接收到响应时,客户端应假定服务器已经收到数据,并应向给定的URI发出新的GET请求。[24]
304未修改(RFC 7232
表示资源未被修改,因为请求头指定的版本If-Modified-Since或If-None-Match。在这种情况下,由于客户端仍然具有先前下载的副本,所以不需要重新传输资源。[25]
305使用代理(自HTTP / 1.1起)
所请求的资源只能通过代理提供,该代理的地址在响应中提供。主要出于安全考虑,许多HTTP客户端(如Mozilla [26]Internet Explorer))无法正确处理此状态代码的响应。[27]
306交换机代理
不再使用 最初是指“后续请求应该使用指定的代理”。[28]
307临时重定向(自HTTP / 1.1起)
在这种情况下,请求应该与另一个URI重复; 然而,未来的请求应该仍然使用原始的URI。与历史上实现的302相反,当重新发出原始请求时,不允许更改请求方法。例如,应该使用另一个POST请求来重复POST请求。[29]
308永久重定向(RFC 7538
请求和所有将来的请求应该使用另一个URI重复。307和308并行302和301的行为,但不允许HTTP方法更改因此,例如,将表单提交给永久重定向的资源可能会顺利进行。[30]

4xx客户端错误

维基百科404错误。
404错误在维基百科上

此类状态代码适用于错误似乎是由客户端引起的情况。除了响应HEAD请求之外,服务器应该包括一个包含错误情况说明的实体,以及它是一个临时的还是永久的。这些状态码适用于任何请求方式。用户代理应该向用户显示任何包含的实体。[31]

400错误请求
由于明显的客户端错误(例如,格式错误的请求语法,大小太大,无效请求消息成帧或欺骗性请求路由),服务器无法或不会处理请求。[32]
401未经授权(RFC 7235
类似于403 Forbidden,但专门用于需要验证并且失败或尚未提供的情况。响应必须包括一个包含适用于所请求资源的挑战的WWW-Authenticate头字段。请参阅基本访问认证摘要访问认证[33] 401语义上意味着“未认证”[34]即用户没有必要的凭据。
注意:当网站(通常是网站域名)禁止IP地址时,某些网站会发出HTTP 401,并且该特定地址被拒绝访问网站。
402付款需要
留作将来使用。原来的意图是,这个代码可能被用作某种形式的数字现金微支付方案的一部分,如GNU Taler [35]所提出的,但是还没有发生,并且这个代码通常不被使用。如果特定开发人员已超过请求的每日限制,Google Developers API将使用此状态。[36] Stripe API使用此代码处理信用卡的错误。[37]
403禁止
请求有效,但服务器拒绝操作。用户可能没有必要的资源权限,或者可能需要某种类型的帐户。
错误(404
找不到请求的资源,但可能在将来可用。客户的后续请求是允许的。
405方法不允许
所请求的资源不支持请求方法; 例如,需要通过POST呈现数据的表单上的GET请求,或只读资源上的PUT请求。
406不可接受
所请求的资源只能根据请求中发送的Accept标头生成不可接受的内容。[38]内容谈判
407需要代理验证(RFC 7235
客户端必须首先使用代理身份验证身份[39]
408请求超时
服务器超时等待请求。根据HTTP规范:“客户端在服务器准备等待的时间内没有产生请求,客户端可以随时重复请求而不进行修改。” [40]
409冲突
表示请求无法处理,因为请求中存在冲突,例如多个同步更新之间编辑冲突
410走了
表示所请求的资源不再可用,将不再可用。当资源被有意地删除并且资源应被清除时,应该使用这个。在收到410状态码后,客户端将来不应该请求资源。诸如搜索引擎的客户端应该从其索引中删除资源。[41]大多数用例不需要客户端和搜索引擎来清除资源,而是可以使用“404 Not Found”。
411需要长度
请求没有指定其所需资源所需的内容长度。[42]
412前提条件失败(RFC 7232
服务器不符合请求者对请求提出的前提条件。[43]
有效负载太大(RFC 7231
请求大于服务器愿意或能够处理的请求。以前称为“请求实体太大”。[44]
414 URI太长(RFC 7231
提供URI太长,无法让服务器进行处理。通常将太多数据的结果编码为GET请求的查询字符串,在这种情况下,应将其转换为POST请求。[45]以前称为“请求URI太长”。[46]
415不支持的介质类型
请求实体具有服务器或资源不支持媒体类型例如,客户端将图像上传为image / svg + xml,但服务器要求图像使用不同的格式。
416范围不满足(RFC 7233
客户端已经要求文件的一部分(字节服务),但服务器不能提供该部分。例如,如果客户端要求文件的一部分超出文件结尾。[47]以前称为“请求范围不满意”。[48]
期望失败417
服务器不能满足Expect request-header字段的要求。[49]
418我是茶壶(RFC 2324
该代码在1998年被定义为传统的IETF April Fools的笑话之一,在RFC 2324超文本咖啡壶控制协议中,并不期望由实际的HTTP服务器实现。RFC指定此代码应由茶壶要求冲泡咖啡返回。[50]这个HTTP状态在某些网站(包括Google.com)中被用作复活节彩蛋[51] [52]
421错误请求(RFC 7540
该请求针对的是无法产生响应的服务器。[53](例如因为连接重用)[54]
422不可处理实体(WebDAV; RFC 4918
该请求格式正确,但由于语义错误而无法遵循。[16]
423锁定(WebDAV; RFC 4918
被访问的资源被锁定。[16]
424失败的依赖关系(WebDAV; RFC 4918
该请求由于先前的请求失败(例如,PROPPATCH)而失败。[16]
426升级需要
客户端应该切换到不同的协议,如TLS / 1.0,在“ 升级头”字段中给出。[55]
428需要前提条件(RFC 6585
原始服务器要求请求是有条件的。旨在防止“丢失更新”问题,客户端获取资源的状态,修改它,并将其重新连接到服务器,同时第三方已修改服务器上的状态,导致冲突。“ [56 ]
429太多请求(RFC 6585
用户在给定的时间内发送了太多的请求。用于速率限制方案。[56]
431请求标头字段太大(RFC 6585
服务器不愿意处理该请求,因为单独的头字段或所有标题字段集体太大。[56]
451不适用于法律理由RFC 7725
服务器运营商已经收到了拒绝对资源或包含所请求资源的一组资源的访问的法律要求。[57]的代码451被选择作为对新颖的参考华氏451度

5xx服务器错误

服务器无法完成请求。[58]

以数字“5”开头的响应状态码表示服务器知道它遇到错误或者其他无法执行请求的情况。除了响应HEAD请求之外,服务器应该包含一个包含错误情况说明的实体,并指出它是临时的还是永久的。同样,用户代理应该向用户显示任何包含的实体。这些响应代码适用于任何请求方法。[59]

500内部服务器错误
在遇到意外情况时给出的通用错误消息,并且没有更多的具体消息是合适的。[60]
501未实施
服务器无法识别请求方法,否则无法完成请求。通常这意味着将来的可用性(例如,Web服务API的新功能)。[61]
502错误的网关
服务器充当网关或代理,并从上游服务器收到无效响应。[62] [63]
503服务不可用
服务器当前不可用(因为维护过载或关闭)。一般来说,这是一个暂时的状态。[64]
504网关超时
服务器充当网关或代理,并没有及时收到上游服务器的响应。[65]
505 HTTP版本不受支持
服务器不支持请求中使用的HTTP协议版本。[66]
506变体还谈判(RFC 2295
请求的透明内容协商得到循环引用[67]
507存储不足(WebDAV; RFC 4918
服务器无法存储完成请求所需的表示。[16]
检测到508环路(WebDAV; RFC 5842
服务器在处理请求时发送无限循环(发送代替208已报告)。
510未扩展(RFC 2774
服务器需要进一步扩展请求才能实现。[68]
需要网络认证511(RFC 6585
客户端需要进行身份验证才能获得网络访问。通过拦截用来控制对网络的访问代理方可使用(例如,“ 圈养门户网站使用授权通过全上网前需要同意服务条款” Wi-Fi热点)。[56]
原创粉丝点击