HTTP协议(requests)
在API的⾃动化测试中,我们更多关注的是HTTP应⽤层的交互,因为即使主流的架构如微服务架构,它的通信模式也是基于REST API轻量级的通信模式
在HTTP的协议中,⼀个完整的HTTP请求流程具体为:
1、客户端与服务端之间建⽴TCP的连接请求
2、客户端向服务端发送Request的请求
3、服务端Response相应回复给客户端
4、客户端与服务端之间关闭TCP的连接请求
针对如上的请求流程,它的完整请求流程如下:
三、通信模式
(1)同步交互
在客户端与服务端在进⾏交互的时候,通信模式主要分为同步通信和异步通信。同步通信简单的可以理解为客户端发送请求给服务端,服务端必须得回应客户端的请求。所以同步通信它存在如下的缺点,具体为:
1、容易超时,客户端发送请求后,服务端迟迟没有回应客户端的请求
2、如果请求是存在⼤的计算量和逻辑存在问题,就会导致请求堵塞,后⾯的都积压(容易堵塞)
四、常⽤请求⽅法
五、常⽤协议状态码
当客户端向服务端发送⼀个请求后,服务端响应回复返回给客户端,在返回的信息中会包含⼀个HTTP请求头的状态码信息⽤以响应客户端的请求。在⽹站https://http.cat中可以看⻅各个不同表情的状态码的显示,如调⽤https://http.cat/504就会显示如下对应的信息。常⽤的状态码具体为:
200 请求成功
301 永久重定向
302 临时重定项
400 Bad Request 客户端请求错误(400请求头或 请求参数不对 以400开头的都是客户端的问题)
401 Unauthorized(未经授权的)
403 Forbidden(被禁止的)
404 请求的资源不存在
405 不被允许的请求⽅法
500 服务器内部错误
504 GateWay Timeout(网关超时)
六、请求头/响应头
七、常⽤请求数据格式