接口测试基础漫谈

随便说说,随便谢谢关于接口测试的一些东西
先说说一般用于WebAPI的测试工具:Postman、SoapUI、RestClient
核心功能是:
1)构建HTTP请求消息
2)解析收到的HTTP响应信息
3)判断是否符合预期
HTTP协议:这个是OSI7层协议和TCP/Ip协议之间的关系
在这里插入图片描述应用层:采用的何种协议
表示层:数据格式和标准的格式转换-图片、文字、声音
回话层:何时建立连接、连接保持多久
传输层:管理2个节点之间的数据传输。负责可靠传输
网络层:地址管理和和路由选择、经过哪个路由更近更快的传递到目标地址
数据链路层:负责数据帧和比特流之间的转换
物理层:比特流和电子信号之间的切换,0和1代表电压的高低,灯光的亮灭
在这里插入图片描述什么是HTTP协议
超文本传输协议(HyperText Transfer Protocol)
作用:规定服务器和浏览器信息传递规范
HTTP协议是一个简单的请求—>响应协议。换句话说:
一个请求只能有一个响应
响应时被动的不能主动发起
HTTP默认的端口是80,HTTPS默认端口是443
HTTP协议版本有HTTP0.9、HTTP1.0(1.1/1.2/2.0),目前以1.1为主
在这里插入图片描述

HTTP请求报文介绍
在这里插入图片描述HTTP请求消息实例
在这里插入图片描述请求报文格式:
第一部分,叫请求头。独占一行。由:请求方法+请求路径+协议和协议版本组成
第二部分:从第二行到第N行,叫请求头。由键值对组成,可以有1对,也可以有N对
第三部分:叫空行,独占一行。由回车换行符组成
第四部分:叫请求体或请求正文,一般POST/PUT等方法才有请求体,GET方法没有请求体
注:1、2、3是必须的,其中2中必须有Host,其他根据需求展示
GET方法:
GET方法提交数据不安全,数据置于请求行,浏览器地址栏可见
GET方法URL长度每个浏览器限制数量不同,最号在2000字符以内
GET方法速度快
默认的请求方法,不需要提交大量数据、无敏感、保密数据使用
POST方法:
POST方法提交数据安全,数据置于消息主体内,浏览器地址栏不可见
POST方法提交的数据大小没有限制
POST方法速度慢
需要提交大量数据、有敏感、保密数据时使用
HTTP 响应
HTTP响应报文介绍
在这里插入图片描述HTTP响应消息实例
在这里插入图片描述
响应报文格式:
第一部分,叫状态行。独占一行。由:协议和协议版本、状态码、状态描述组成
第二部分:从第二行到第N行,叫响应头。由键值对组成,可以有1对,也可以有N对
第三部分:叫空行,独占一行。由回车换行符组成
第四部分:叫响应体,一响应回来的数据格式(多种)
HTTP响应状态码(常见)
200 客户端请求成功
301 永久性重定向
302 临时性重定向
403 服务器收到请求,但拒绝提供服务
404 请求的资源不存在
500 服务器发生不可预期的错误

请求/响应头中,重要的参数
1、Content_Type参数
Content_Type:表示互联网媒体类型,存在于请求中或响应中
如果在请求中则表示告诉服务端客户端实际发送的数据类型
如果出现在响应中则表示告诉客户端服务端实际发送的数据类型
在请求中,常见的数据类型有:
application/x-www-form-urlencoded-----> 以“键-值”对的方式组织的数据
multipart/form-data-----> 一般需要上传文件的表单则用该类型
application/json -----> JSON 字符串格式提交数据
2、cookie参数
Cookie参数,也是一个很重要的参数,存在于请求或相应中
源头在服务端,服务端向客户端设置Cookie后,浏览器会自动把Cookie添加到每次请求的请求头中。一般用在用户登录或记住用户名等地方。
关于HTTPS
HTTP请求都是明文传输的,所谓的明文指的是没有经过加密的信息,如果HTTP请求被黑客拦截,并且里面含有银行卡密码等敏感数据的话,会非常危险。为了解决这个问题,Netscape 公司制定了HTTPS协议,HTTPS可以将数据加密传输,也就是传输的是密文,即便黑客在传输过程中拦截到数据也无法破译,这就保证了网络通信的安全。
明文:原始数据
密文:明文被算法加密,变为密文,密文是可以被解密的
秘钥:解开密文的钥匙。分为对称秘钥和非对称的秘钥
对称加密:使用同一个密钥进行加密和解密。特点是加密解密速度快
明文+私钥=密文
密文+私钥=明文
非对称加密;使用公钥加密,私钥解密。特点是解密速度慢
明文+公钥=密文
密文+私钥=明文
二、HTTPS数据传输:
需求:

1、客户端要把敏感数据发给服务器端,且不能被别人破译,怎么办?
2、服务器端也要把敏感数据发给客户端,且不能被别人破译,怎么办?

解决方法:
服务器端配置一对非对称的密钥:公钥(仅能加密)和私钥(仅能解密)
公钥可以给任何客户端,客户端加密后的数据,只有服务器能解密
私钥留给自己,打死都不外借,只用来解密公钥加密过的数据
非对称密钥加密解密速度慢,不能多用

客户端买了2把对称的钥匙,一把留给自己从不外借,一把用公钥加密后,寄给服务端
服务端拿到经过公钥加密后的客户端密钥,用它的私钥解密,
最终服务端安全的得到了客户端对称的钥匙

客户端和服务端需要传输数据时,都采用客户端密钥,进行对称加密进行数据传输
终于客户端和服务端可以愉快的聊天了
图解:
在这里插入图片描述HTTPS协议主要特点
HTTPS协议需要到CA申请证书,一般免费证书很少,需要交费
HTTP信息是明文传输,HTTPS则是具有安全性的SSL加密传输协议
HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443

下面链接是一片把五层协议讲的比较好的记录下:https://blog.csdn.net/m0_37907797/article/details/102740903

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZhaoXuWen23

你的鼓励是我的动力,持续更新中

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值