掌握 HTTP 协议,做好接口测试必备技能

服务与服务之间通讯,不一样的使用场景,使用不同协议进行通讯,比如常见协议有 HTTP、WebSocket、gRPC、Dubbo。

HTTP 协议是应用最广泛的,在我们的生活中无处不在,只要你上网,不管使用 App 还是浏览器,刷短视频、看新闻、听音乐、玩游戏等操作, 总有 HTTP 为你提供服务。

在接口测试中,HTTP 协议也是最常见,下面重点讲解 HTTP 协议。

HTTP 是指超文本传输协议,英文全称是 HyperText Transfer Protocol。

HTTP 协议由请求报文和响应报文组成,两个报文的结构很类似,由三部分组成:

起始行(start line):描述请求或响应的基本信息;

头部字段集合(header):使用 key-value 说明报文头部信息,key 和 value 使用“:”分隔。

消息正文(entity):实际传输的数据,可以是纯文本、Json 数据、视频、文件、图片等数据。

通常把起始行和头部字段集合,合称为请求头或响应头。下面是请求头示意图:

图片

注:SP是指空格(space),CRLF 是指回车换行

请求行由三部分构成:

Method(请求方法):表示对资源的操作,有 GET/POST等方法。

URI:表示请求方法要操作的资源。

Version(版本号):HTTP 协议版本。

使用 Wireshark 抓包,请求报文如下图,是和请求头示意图一一对应。

图片

Method(请求方法)有如下:

GET:获取资源,可以理解为读取或者下载数据;
HEAD:获取资源的元信息;
POST:向资源提交数据,相当于写入或上传数据;
PUT:类似 POST,一般用于修改数据;
DELETE:删除资源;
CONNECT:建立特殊的连接隧道;
OPTIONS:列出可对资源实行的方法;
TRACE:追踪请求 - 响应的传输路径。

上面介绍 8 种请求方法,常用的有:GET、POST、PUT、DELETE。

接下来看看响应头示意图:

图片

注:SP是指空格(space),CRLF 是指回车换行

状态行也是由三部分构成:

版本号:HTTP 协议版本。

状态码:用代码表示处理的结果,比如 200 是成功,404 是客户端请求错误,未找到资源。

原因:对状态码进行原因说明。

使用 Wireshark 抓包,响应报文如下图,是和响应头示意图一一对应。

图片

在接口测试过程,能常看到的状态码有:

  • 1××:提示信息,请求收到了正在处理
    — 100:继续,客户端可以继续其请求

  • 2××:成功,请求收到了并被正确处理
    — 200 成功

  • 3××:重定向,资源位置发生变动,需要客户端重新发送请求
    — 301 永久重定向,请求的资源已经不存在了,需要改用新的 URI 再次访问
    — 302临时重定向,请求的资源还在,但需要暂时用另一个 URI 来访问

  • 4××:客户端错误,请求报文有误,服务器无法处理
    — 403 未授权
    — 404 未找到
    — 405 不允许某些请求方法,

  • 5××:服务器错误,服务器在处理时发生错误
    — 500 服务器内部错误
    — 502 网关或者代理时返回的错误码
    — 503 服务不可用

HTTP 协议讲解完,如果对你帮助请点个赞。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

  • 18
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值