HTTP 状态代码或响应码共分为五类,分别是 1×× 提示信息,2×× 成功,3×× 重定向,4×× 客户端错误,5×× 服务器错误。
本文包含了完整的 HTTP 状态码以及相应的描述信息。
当我们进行 API 测试时,通常首先会检查 API 调用返回的响应的状态码。这就要求我们必须熟悉那些最常见的 HTTP 状态码,以便我们能够更快地识别问题。
1×× 提示信息类状态码
1xx 提示信息类状态代码表示在完成请求的动作并发送最终响应之前,用于表示通信连接状态或请求进度的临时响应。
- 100 继续
- 101 交换协议中
- 102 处理中
2×× 请求成功响应状态码
2xx(Successful)类状态代码表示客户端的请求已被成功接收、理解和接受。
- 200-正常,状态代码表示请求已成功。在 200 响应中发送的有效载荷取决于请求方法。
- 201-已创建,状态代码表示请求已完成,并导致创建一个或多个新资源。
- 204-无内容,状态代码指示服务器已成功完成请求,并且在响应有效载荷主体中没有要发送的附加内容。
- 202-接受
- 203-非权威信息
- 205-重置内容
- 206-部分内容
- 207-多状态
- 208-已报告
- 226-使用 IM
相关:
3xx 重定向
3xx状态码表示用户代理需要执行进一步的操作才能完成请求。
- 301-永久移动,状态代码指示目标资源已分配了一个新的永久 URI,并且将来对该资源的任何引用都应使用其中一个封闭的 URI。
- 302-找到,状态代码指示目标资源暂时驻留在不同的 uri 下。
- 304-未修改
- 300-多种选择
- 303-参见其他
- 305-使用代理
- 307-临时重定向
- 308-永久重定向
4×× 客户端错误
4xx(客户端错误)类状态代码表示客户端似乎出错了。
400 错误请求
400(错误请求)状态代码表示,由于被认为是客户端错误的原因(例如,格式错误的请求语法),服务器无法或不会处理该请求。
401 未经授权
401(未授权)状态码表示该请求尚未应用,因为它缺少目标资源的有效身份验证凭据。
403 禁止
403(禁止)状态代码表示服务器理解请求但拒绝授权。
404 未找到
404(未找到)状态代码指示源服务器没有找到目标资源的当前表示,或者不愿意公开存在的表示。
405 不允许的方法
405(Method Not Allowed)状态代码指示在请求行中接收的方法被源服务器知道,但不被目标资源支持。
415 不支持的媒体类型
415(不支持的媒体类型)状态代码表示源服务器拒绝为请求提供服务,因为有效负载的格式不受目标资源上此方法的支持。格式问题可能是由于请求指示的内容类型或内容编码,或者是直接检查数据的结果。
- 402 需要付款
- 406 不可接受
- 407 需要代理身份验证
- 408 请求超时
- 409 冲突
- 410 消失
- 411 所需长度
- 412 先决条件失败
- 413 有效载荷太大
- 414 请求URI太长
- 416 请求的范围不满足
- 417 预期失败
- 418 我是个茶壶,超文本咖啡罐控制协议,但是并没有被实际的HTTP服务器实现
- 421 错误的请求
- 422 不可处理实体
- 423 锁定
- 424 失败的依赖关系
- 426 需要升级
- 428 需要先决条件
- 429 请求太多
- 431 请求标题字段太大
- 444 连接关闭无响应
- 451 因法律原因不可用
- 499 客户端关闭请求
5×× 服务器错误
状态代码的5xx(Server Error)类表示服务器意识到它已经出错或无法执行请求的方法。
500 内部服务器错误
500(内部服务器错误)状态代码表示服务器遇到意外情况,无法满足请求。
502 坏网关
502(坏网关)状态代码表示服务器在充当网关或代理时,在尝试完成请求时从其访问的入站服务器接收到无效响应。
503 服务不可用
503(服务不可用)状态代码表示由于临时过载或计划维护,服务器当前无法处理请求,这可能会在一些延迟后得到缓解。
504 网关超时
504(网关超时)状态代码表示服务器在充当网关或代理时,没有收到上游服务器的及时响应,该服务器需要访问上游服务器才能完成请求。
- 501 未实施
- 505 不支持HTTP版本
- 506 变体也协商
- 507 存储不足
- 508 检测到循环
- 510 未扩展
- 511 需要网络认证
- 599 网络连接超时错误