技术分享 | 接口测试之 HTTP 协议讲解
本文节选自霍格沃兹测试开发学社内部教材
HTTP 协议是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP 是万维网的数据通信的基础。客户端向服务端发送 HTTP 请求,服务端则会在响应中返回所请求的数据。了解了 HTTP 协议,才能对接口测试进行更深入的学习。
环境安装准备
HTTP 请求报文和响应报文都是由三个部分组成的:
开始行:请求报文中叫请求行,响应报文中叫状态行
首部行:用来说明浏览器服务器或报文主体的一些信息
实体主体:请求报文中一般不使用,响应报文中可能也没有
请求报文
requests 报文结构
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OK6c6B96-1664261272407)(upload://6txDvFRBFiXtoLXyFVAHcxzbpHQ.jpeg)]
请求行:请求方法、请求资源的 URL、HTTP 版本信息
首部行:请求行的下一行一般为首部行的开始,包括主机域名、连接信息、用户代理等等信息
实体主体:一般不使用
请求信息的示例
请求报文的方法
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TT5cO6zJ-1664261272410)(upload://sszZ0mejbC0t4zUDwblWUZtIRQF.png)]
常用的请求报文的方法为 GET、POST。会在后面的章节中进行详述。
响应报文
1、状态行:HTTP 版本、状态码、解释状态码短语
2、首部行:服务器信息、时间、内容类型、内容长度等等
3、实体主体
响应信息的示例
状态码
状态码有 5 个大类,由第一位数字进行区分,每个大类下面还有不同的子类,每种子类的长度都是 3 位,都代表一个状态码,即一种类型的返回的信息。
1xx 表示通知信息,如请求收到了或正在进行处理
2xx 表示成功,如接受或知道了
3xx 表示重定向,如果要完成请求还必须才去进一步的行动
4xx 表示客户端的差错
5xx 表示服务器的差错
「Python App 自动化测试训练营」全面升级,资深测试开发工程师带你从 0 到 1 快速上手 APP 自动化测试,扫码可领取课程资料哦~
点击下方链接免费领取:性能测试+接口测试+自动化测试+测试开发+测试用例+简历模板+测试文档
http://qrcode.testing-studio.com/f?from=infoQ&url=https://ceshiren.com/t/topic/22265
评论