目录
引言
在工作中经常会遇到各种各样的bug,在我们排查问题时,经常需要查看response返回的状态码信息来判断bug类型,除了项目自定义的状态码之外,其余的就是常见的网络状态码,所以了解常见的HTTP网络状态码是非常重要的,这能帮助我们快速的排查出问题,本文是关于常见的网络状态码的总结。
常见状态码的类型
状态码分为以下五大类,每类有不同的具体码值,用于描述不同的情况:
- 1xx 信息响应:接收的请求正在处理。
- 2xx 成功响应:请求正常处理完毕。
- 3xx 重定向:需要进行附加操作以完成请求。
- 4xx 客户端错误:服务器无法处理请求。
- 5xx 服务器错误:服务器处理请求出错。
1xx Informational(信息性状态码)
相比于其他类别状态码来说,1xx 平时大概率不会碰到,所以这里直接跳过。
2xx Success(成功状态码)
状态码 | 类别 | 描述 |
---|---|---|
200 | OK | 请求被成功处理 |
201 | Created | 指示服务器已经成功处理了客户端的请求,并且在服务器上创建了一个新的资源 |
202 | Accepted | 服务端已经接收到了请求,但是还未处理 |
204 | No Content | 服务端已经成功处理了请求,但是没有返回任何内容 |
206 | Partial Content | 应用于 HTTP 分块下载或断点续传,表示响应返回的 body 数据并不是资源的全部,而是其中的一部分,也是服务器处理成功的状态 |
3xx Redirection(重定向状态码)
状态码 | 类别 | 描述 |
---|---|---|
301 | Moved Permanently | 表示久重定,说明请求的资源已经不存在了,需改用新的 URL 再次访问 |
302 | Found | 表示临时重定向,说明请求的资源还在,但暂时需要用另一个 URL 来访问 |
304 | Not Modified | 不具有跳转的含义,表示资源未修改,重定向已存在的缓冲文件,也称缓存重定向,也就是告诉客户端可以继续使用缓存资源,用于缓存控制 |
4xx Client Error(客户端错误状态码)
状态码 | 类别 | 描述 |
---|---|---|
400 | Bad Request | 发送的 HTTP 请求存在问题 |
401 | Unauthorized | 未认证却请求需要认证之后才能访问的资源 |
403 | Forbidden | 表示服务器禁止访问资源 |
404 | Not Found | 表示请求的资源在服务器上不存在或未找到 |
409 | Conflict | 表示请求的资源与服务端当前的状态存在冲突,请求无法被处理 |
5xx Server Error(服务端错误状态码)
状态码 | 类别 | 描述 |
---|---|---|
500 | Internal Server Error | 服务端出现了问题,是个笼统通用的错误码 |
501 | Not Implemented | 表示客户端请求的功能还不支持 |
502 | Bad Gateway | 通常是服务器作为网关或代理时返回的错误码,表示服务器自身工作正常,访问后端服务器发生了错误 |
503 | Service Unavailable | 表示服务器当前很忙,暂时无法响应客户端 |