HTTP权威指南笔记-状态码

HTTP状态码被分为了五大类。下边针对这五大类进行了总结文章源自Mervyn's Blog-https://mervyn.life/f762a182.html

100~199 信息性状态码

状态码 原因短语 含义
100 continue 说明收到了请求的初始部分,请客户端继续,发送了这个状态码之后,服务器在收到请求之后必须进行相应。
101 Switching Protocols 说明服务器正在根据客户端的指定,将协议切换成Update首部所列的协议

100 continue 状态码的目的是对这样的情况进行优化:HTTP客户端应用程序有一个实体的主体部分要发送给服务器,但希望在发送之前查看一下服务器是否会接受这个实体。文章源自Mervyn's Blog-https://mervyn.life/f762a182.html

如果客户端在向服务器发送一个实体,并且愿意在发送实体之前等待 100 continue 响应,那么,客户端就要发送一个携带了值为 100 continueExcept 请求首部。文章源自Mervyn's Blog-https://mervyn.life/f762a182.html

客户端应用程序只有在避免向服务器发送一个服务器无法处理或使用的大实体时,才应该使用 100 continue文章源自Mervyn's Blog-https://mervyn.life/f762a182.html

200~299 成功状态码

状态码 原因短语 含义
200 OK 请求没问题
201 Created 用于创建服务器对象的请求(如:PUT)。响应的实体部分中应该包含各种引用了已创建的资源的URL,Location首部包含的则是最具体的引用。服务器必须在发送这个状态码之前创建好对象
202 Accepted 请求已被接受,但服务器还未对其执行任何动作。不能保证服务器会完成这个请求,这只是意味着接受请求时,它看看起来是有效的。服务器应该在实体的主体部分包含对请求状态的描述,或者还应该有对请求完成时间的估计(或者包含一个指针,指向可以获取此信息的位置)
203 Non-Authoritative Information 实体首部包含的信息不是来源于源端服务器,而是来自资源的一份副本。如果中间节点上有一份资源副本,但无法或者没有对它所发送的与资源有关的元信息进行验证,就会出现这种情况。
204 No Content 响应报文中包含若干首部和一个状态行,但没有实体的主体部分,主要用于浏览器不转为显示新文档的情况下,对其进行更新。
205 Reset Content 另一个主要用于浏览器的代码,负责告知浏览器清除当前页面中的所有HTML表单元素
206 Partial Content 成功执行了一个部分或Range请求。
206响应必须包含Content-Range,Date及ETag或者Content-Location首部

300~399 重定向状态码

状态码 原因短语 含义
300 Multiple Choices 客户端请求一个实际指向多个资源的URL时会返回这个状态码,比如服务器上有某个html文档的英语和法语版本。返回这个代码时回带有一个选项列表;这样用户就可以选择他希望使用的那一项了。有多个版本可用时,客户端需要沟通解决。服务器可以在Location首部包含首选URL
301 Move Permanently 在请求的URL已被移除时使用。响应的Location首部中应该包含资源现在所处的URL
302 Found 与301状态码类似;但是,客户端应该使用Location首部给出的URL来临时定位资源,将来的请求应仍使用老的URL
303 See Other 告知客户端应该使用另一个URL来获取资源。新的URL位于响应报文的Location首部。其主要目的是允许POST请求的响应将客户端定向到某个资源上去
304 Not Modified 客户端可以通过所包含的请求首部,使其请求编程有条件的。如果客户端发起一个条件GET请求,而最近资源未被修改的话,就可以使用这个状态码来说明资源未被修改。带有这个状态码的响应不应该包含实体的主体部分
305 Use Proxy 用来说明必须通过一个代理来访问资源;代理的位置由Location首部给出。客户端是相对某个特定资源来解析这条响应的,不能假定所有请求。如果客户端错误的让代理介入了某条请求,可能会引发破坏性行为,而且会造成安全漏洞
306 (未使用) 当前未使用
307 Temporary Redirect 与301类似;但客户端使用Location首部给出的URL来临时定位资源。将来的请求使用老的URL

400 ~ 499 客户端错误状态码

状态码 原因短语 含义
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allow
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Procondition Failed
413 Request Entity Too Large
414 Request URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed

500 ~ 599 服务器错误状态码

状态码 原因短语 含义
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
文章源自Mervyn's Blog-https://mervyn.life/f762a182.html
weinxin
我的微信公众号
微信扫一扫
mervyn
HTTP权威指南笔记-HTTP报文组成部分 计算机网络

HTTP权威指南笔记-HTTP报文组成部分

报文的语法 每条报文都包含一条来自客户端的请求或者服务端的响应。由以下三部分组成: 起始行 包含属性的首部块 以及可选的、包含数据的主体部分 所有的HTTP报文都可以分为两类: 请求报文 和 响应报文...
HTTP权威指南笔记-HTTP报文组成部分 计算机网络

HTTP权威指南笔记-HTTP报文组成部分

报文的语法 每条报文都包含一条来自客户端的请求或者服务端的响应。由以下三部分组成: 起始行 包含属性的首部块 以及可选的、包含数据的主体部分 所有的HTTP报文都可以分为两类: 请求报文 和 响应报文...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: