一、响应状态码
1. 200
- 含义: 200系列代表请求成功。
- 常见状态码: 200、202、204等。
- 具体解释:
- 200: 一般查询接口成功返回。
- 201: 通常表示资源创建或更新成功。
- 204: 常用于删除接口,表示删除成功,没有返回内容。
- 注意: 200仅代表客户端与服务器通信成功,不代表业务逻辑一定正确,例如可能返回订单不存在或密码错误等信息。
2. 3xx
- 含义: 300系列表示数据路径发生改变,需要重定向。
- 常见状态码: 302、304等。
- 具体解释:
- 302: 临时重定向,常见于HTTP到HTTPS的跳转。
- 304: 未修改,表示客户端缓存的资源未改变,可使用缓存。
3. 4xx
- 含义: 400系列表示客户端请求有误。
- 常见状态码: 404、403等。
- 具体解释:
- 404: 页面未找到。
- 403: 访问被禁止。
- 解决方向: 出现4xx错误,需检查URL、请求方法、参数等客户端设置问题。
4. 5xx
- 含义: 500系列表示服务器错误。
- 常见状态码: 500、503等。
- 具体解释:
- 500: 服务器内部错误。
- 503: 服务不可用。
- 解决方向: 出现5xx错误,通常是服务器或后台代码问题,需服务器端进行排查和修复。
5. 内容小结
- 2XX: 成功,客户端与服务器通信成功。
- 3XX: 重定向,数据路径改变,服务器指导客户端访问新地址。
- 4XX: 客户端错误,请求有误,需检查客户端设置。
- 5XX: 服务器错误,服务器或后台代码问题,需服务器端处理。
- 响应体常见格式: HTML、JSON,其中JSON是接口测试中最常见的格式。
二、演示案例
1. 示例代码
- 演示内容: 老师通过浏览器自带的招标工具进行演示,展示如何抓取登录请求。
- 操作步骤: 输入用户名(如136)和万能密码(如8889),并观察验证码是否正确及后台判断。
2. 例题
1)题目解析
- 请求与响应: 通过F12打开浏览器的开发者工具,观察网络(Network)标签页中的登录请求。
- 状态码分析:
- 200状态码: 代表客户端与服务器请求成功,但不一定表示登录成功(如验证码错误)。
- Unicode编码: 响应数据中的中文会以Unicode编码形式显示,可通过工具进行转换查看实际内容。
- 操作工具: 使用百度搜索“unicode编码转换工具”进行编码转换。
3. 例题
1)题目解析
- 重定向讲解:
- 访问京东示例: 访问http://jd.com时,会自动重定向到https://jd.com(安全协议)。
- 状态码302: 表示重定向,原访问的http协议被重定向到https协议。
- 结果说明: 不是访问了两次,而是由于存在重定向机制导致有两个地址。
- 其他状态码:
- 400错误: 域名不存在或无法访问。
- 500错误: 服务器问题。
三、知识小结
知识点 | 核心内容 | 考试重点/易混淆点 | 难度系数 |
响应状态码和响应体 | 响应状态码和响应体是接口测试的重点 | - | 🌟 |
200系列状态码 | 代表成功,常见有200、201、202、204等 | 200不代表业务成功,只代表客户端与服务器通信成功 | 🌟🌟 |
300系列状态码 | 代表路径发生改变或重定向,最常见是302 | - | 🌟 |
400系列状态码 | 代表客户端问题,如URL、方法、参数错误 | 只要出现400系列,就是客户端请求有误 | 🌟 |
500系列状态码 | 代表服务器问题,服务器处理不了请求 | 只要出现500系列,就是服务器的问题 | 🌟 |
响应体格式 | 常见的有json、HTML等 | 接口测试中最常见的是json格式 | 🌟 |
HTTP请求组成 | 由协议、主机地址、端口号、路径、参数、请求方法等组成 | - | 🌟 |
请求方法 | 常见的有GET和POST,GET放在URL中长度有限制,POST无长度限制 | - | 🌟 |
状态码与业务关系 | 200只代表客户端与服务器通信成功,不代表业务成功 | 易混淆为业务成功 | 🌟🌟🌟 |
重定向演示 | 访问http时会自动重定向到https,状态码为302 | - | 🌟 |