什么是HTTP状态码?
用以表示网页服务器、超文本传输协议响应状态的三位数字代码
HTTP状态码有啥用?
负责表示客户端HTTP请求的返回结果、标记服务器端的处理是否正常、通知出现的错误等工作
HTTP状态码的类别
HTTP状态码 = 三位数字(第一位表示类别) + 原因短语
- 1XX
类别:informational 信息性状态码
原因短语:接收的请求正在处理 - 2XX
类别:success 状态成功码
原因短语:请求正常处理完毕 - 3XX
类别:redirection 重定向状态码
原因短语:需要进行附加操作完成请求 - 4XX
类别:client error 客户端错误状态码
原因短语:服务器无法处理请求 - 5XX
类别:server error 服务器错误状态码
原因短语:服务器处理请求错误
1XX 信息响应
- 100:继续
一切正常,继续请求 - 101:协议切换
表示服务器应客户端升级协议的请求(Upgrade请求头)正在进行协议切换。服务器会发送一个Upgrade响应头来表示其正在切换过去的协议。
2XX 成功响应
- 200:成功
客户端发来的请求被正常处理了
不同的方法,请求成功的意义不同:
GET:对应的请求资源实体会作为相应返回
POST:响应的消息体中包含请求的结果 - 201:请求成功,创建新资源
- 202:已接受
收到请求,但未处理 - 203:非授权信息
服务器已经成功处理了请求,但是返回的信息头部的元信息不是在原始服务器上的有效确定集合(未授权信息),而是来自第三方或者本地的拷贝 - 204:没有内容
服务器成功处理了客户端请求,但服务器无返回内容。 - 205:重置内容
服务器成功处理了请求,但没有返回任何内容,且要求请求者重置文档视图。 - 206:部分内容
表示客户端进行了范围请求,而服务器成功执行了这部分GET请求。响应报文中包含由Content-Range指定范围的实体内容
3XX 重定向
- 300:多项选择
表示该请求拥有多种可能的响应,用户从中选择一个 - 301 永久性重定向
请求的资源已经被分配了新的URL,以后应该使用现在所指的URL。 - 302 临时性重定向
请求的资源已经被分配了新的URL,希望用户本次使用新的URL访问 - 303 参见其他
请求的资源存在另一个URL,应使用get方法定向获取资源
302不会改变http请求方法,303会 - 304 未修改
当客户端发送附带条件的请求时,服务器允许请求访问资源,但未满足条件的情况。304返回时不包含任何响应的主体。(和重定向没什么关系) - 305 使用代理
被请求的资源必须通过指定的代理才能被访问
4XX 客户端响应
- 400 坏请求
请求报文中存在语法错误,需要修改后再次发送请求 - 401 未授权
发送的请求需要有通过HTTP认证的认证信息。若之前已经进行过一次请求,则比奥是认证失败
缺乏目标资源要求的身份验证凭证,发送的请求未得到满足。 - 402 要求付款
尚未启用 - 403 禁止
服务器拒绝了对请求资源的访问 - 404 未找到
表明服务器上无法找到请求的资源
5XX 服务器错误
- 500 内部资源出错
服务器端在执行请求时发生了错误 - 501 未执行
表示请求的方法不被服务器支持,因此无法被处理
服务器必须支持的方法(即不会返回这个状态码的方法)只有 GET 和 HEAD - 502 Bad Gateway
表示扮演网关或代理角色的服务器,从上游服务器中接收到的响应是无效的
通常不是客户端能够修复的错误,需要Web服务器或代理服务器进行修复 - 503 Service Unavailable
服务器暂时处于超负载或正在进行停机维护,现在无法处理请求 - 504 Gateway Timeout(网关超时)
响应来自网关或代理,网关或代理在等待另一台服务器的响应时出现了超时 - 505 不支持的HTTP版本
服务器收到的请求使用了它不支持的HTTP协议版本
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。