Python-接口自动化(六)
接口基础知识(六)
(七)接口
1、接口:外部系统与本系统之间以及系统内部的各个子系统间,以约定标准提供的服务,包括对外提供的接口/对外提供的接口。
不同的请求协议:http webservice dubbo socket
http请求分为:get post delete put head option
GET和POST的区别:
GET:提交的参数会拼接到URL里面去,不是一种很安全的提交数据方式,传递的数据量比较小;
POST:数据和URL不会拼接到URL里面,post用额外的数据格式去传递,比如json/xml,传递的数据量比较大。
接口测试的本质就是测试类里面的函数。
2、http request
一个http请求是指从客户端到服务端的请求信息,包括以下内容:
请求地址:url
请求方法:HEAD GET POST PUT OPTINONS DELETE PATCH
http协议/版本:可以打开浏览器按f12自行查看
请求头:http客户程序(例如浏览器)向服务器发送请求的时候必须指明请求类型(一般是GET或者POST),如果有必要,客户程序还可以选择发送其他的请求头
请求正文:也就是我们所说的请求参数
注:请求头里面的参数不一定是每次请求都必须要带的。
3、http response
包含了以下几个:
状态码:标记响应状态的一个标识
响应头
响应正文:针对请求从服务响应回来的数据,比如html、xml、json等
常见的状态码:
200(正常):表示一切正常,到了服务器并且服务器正常的响应了你的请求;
302(临时重定向):指出被请求的文档已被临时移动到别处,此文档的新URL在Location响应头中给出;
304(未修改):表示客户机缓存的版本是最新的,客户机应该继续使用它,比如说前端js、css、jpg等等;
403(禁止):服务器理解客户端请求,但拒绝处理它。通常由于服务器上文件或者目录的权限设置所致;
404(找不到):服务器上不存在客户机所请求的资源;
500(内部服务器错误):服务器端的CGI、ASP、JSP等程序发生错误
504:超时
4、cookie&session
cookie:在客户端存储用户的一些数据,比如说用户名啊浏览记录这些
session:在服务器端记录用户的请求状态,一般默认时间是30分钟
会员卡机制:session_id会存在cookie中,每次请求cookie中的所有信息都会传送给服务器,服务器通过session_id来识别是否是同一个用户的请求,如果不是同一个用户的话,就会要求用户重新登录。
注:存在这种机制的原因:因为http请求是无状态的。
5、token&key
鉴权(token):访问的接口是否正常,是否非法访问,绕过前端访问;
授权(key):是否具有访问的接口的权限,一般来说是唯一的,全局的,动态的,具备一定特征。
以上,第六部分到此结束~
Python-接口自动化(六)的更多相关文章
- python接口自动化六(参数化也就是把之前敲过的代码封装成方法)
前言 前面一篇实现了参数的关联,那种只是记流水账的完成功能,不便于维护,也没什么可读性,接下来这篇可以把每一个动作写成一个函数,这样更方便了. 参数化的思维只需记住一点:不要写死 (由于博客园登录机制 ...
- python接口自动化11-post传data参数案例
前言: 前面登录博客园的是传json参数,有些登录不是传json的,如jenkins的登录,本篇以jenkins登录为案例,传data参数. 一.登录jenkins抓包 1.登录jenkins,输入账 ...
- python接口自动化(响应对象方法)
python接口自动化(响应对象方法) 一.encoding作用 获取请求的编码(在不设置响应编码时,响应的信息默认使用的是请求的编码格式):r.encoding 设置响应的编码:r.encoding ...
- python接口自动化(get请求)
python接口自动化(get请求) get请求的目的:查询资源 一.导包 二.请求的URL 三.请求的参数 四.获取请求的URL 五.获取响应的状态码 六.获取响应的本文信息 #导包 import ...
- Python接口自动化——soap协议传参的类型是ns0类型的要创建工厂方法纪要
1:在Python接口自动化中,对于soap协议的xml的请求我们可以使用Suds Client来实现,其soap协议传参的类型基本上是有2种: 第一种是传参,不需要再创建啥, 第二种就是ns0类型的 ...
- python接口自动化(十)--post请求四种传送正文方式(详解)
简介 post请求我在python接口自动化(八)--发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先 ...
- python接口自动化-Cookie_绕过验证码登录
前言 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以通过添加Cookie的方式绕过验证码 前面在“pyt ...
- python接口自动化28-requests-html爬虫框架
前言 requests库的好,只有用过的人才知道,最近这个库的作者又出了一个好用的爬虫框架requests-html.之前解析html页面用过了lxml和bs4, requests-html集成了一些 ...
- python接口自动化-参数化
原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...
- python接口自动化 -参数关联(一)
原文地址https://www.cnblogs.com/yoyoketang/p/6886610.html 原文地址https://www.cnblogs.com/yoyoketang/ 原文地址ht ...
随机推荐
- 基础JAVA程序设计(多个类与方法的实现2)
设计一个类代表二维空间的一个点(Point),要求:两个成员变量:x坐标和y坐标. 设计一个类代表二维空间的一个圆(Circle),要求:两个成员变量:一个是圆心,一个是半径:提供计算圆面积的方法:提 ...
- bzoj 3473 字符串 - 后缀数组 - 树状数组
题目传送门 传送门 题目大意 给定n个字符串,询问每个字符串有多少子串(不包括空串)是所有n个字符串中至少k个字符串的子串 先用奇怪的字符把所有字符串连接起来. 建后缀树,数每个节点的子树内包含多少属 ...
- GIT命令介绍
Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Linux系统的源码已经由Git管理了!牛是怎么定义的呢?大家可以体会一下. 区别与集中式的分布式实现!!!! 集中 ...
- shell编程(七)之字符串处理
字符串切片 ${var:offset:number} 取字符串的最右侧几个字符: ${var: -length} 注意: 冒号后必须有一个空白字符 #!/bin/bash var="chen ...
- MyBatis进阶(四)
mapper.xml文件的编写 mapper.xml映射文件实现数据库和实体类之间的映射关系,定义操作数据库的sql语句. 主体部分 文件头部 <?xml version="1.0&q ...
- BUTXO详解
在比原链中,每个交易消耗之前交易生成的BUTXO 然后生成新的 BUTXO,账户的余额即所有属于该地址的未花费 BUTXO 集合,BTM 的全局状态即当前所有未花费的BUTXO 集合.我们用一个具体的 ...
- sass报 error (Line XX: Invalid GBK character "\xE4") 的解决办法
在webstorm配置的SASS,插入中文注释报错: cmd.exe /D /C call D:\ProgramFiles\Ruby24-x64\bin\sass.bat --no-cache --u ...
- Qt5OpenGL.顶点像素大小设置
1. 2. // ZC: 像素点的大小 设置:2种方式: // ZC: (1)代码指定方式 // ZC: (2)GLSL种指定方式[A]只能在顶点着色器种指定,不能在片原着色器种指定[B]代码中还要指 ...
- ES6删除对象中的某个元素
const form = { id: '011', name: '测试一', description: '测试demo' } // 目标: 取到删除description属性的对象, 即下文的data ...
- HDU 6495 冰水挑战
Problem Description Polar Bear Pitching helps you crystallize your message. The stage could not be a ...