写点什么

接口管理工具 APIPOST 的预 / 后执行脚本里,常见的响应参数变量和常用方法集合——apipost

用户头像
Proud lion
关注
发布于: 3 小时前

预(后)执行脚本常用方法集合

本文主要讲解接口管理工具 APIPOST 的预执行脚本和后执行脚本里,常见的响应参数变量和常用方法集合。

request:请求参数对象

含义:当前请求的请求参数适用范围:预执行脚本、后执行脚本我们可以在预执行脚本或后执行脚本里,通过 request 对象来获得请求的参数数据。该对象结构如下:

{    "url": "https://console.apipost.cn/need_token.php",  // 字符串,请求URL    "method": "POST",    // 字符串,请求方式    "timeout": 25000,    // 数字,请求超时时间限制(毫秒)    "contentType": "application/x-www-form-urlencoded", //字符串,请求contentType    "request_bodys": { // 对象,预定义请求Body参数        "user_id": "1",        "nick_name": "jim green"    },    "request_headers": { // 对象,预定义请求Header参数        "Authorization": "Basic amltOnB3ZDEyMw=="    }}
复制代码

response.raw:原始响应数据

含义:当前请求的原始响应数据适用范围:后执行脚本调用示例:

response.raw.status //响应状态码(200、301、404等)response.raw.responseTime //响应时间(毫秒)response.raw.type //响应类型(json等)response.raw.responseText //响应文本
复制代码

response.json:json 格式的响应数据

含义:当前请求 json 格式的响应数据适用范围:后执行脚本



调用示例如上面示例:

response.json.data.token //也可以 response.json.data["token"]
复制代码

response.headers:响应头

含义:当前请求的响应头适用范围:后执行脚本



调用示例:

response.headers.server //也可以 response.headers["server"]
复制代码

response.cookies :响应 cookie

含义:当前请求的响应 COOKIE 适用范围:后执行脚本



调用示例:

response.cookies.PHPSESSION //也可以 response.cookies["PHPSESSION"]
复制代码

ApiPost 常用方法集合

1、设置环境变量

apt.variables.set("key", "value"); // 设置一个环境变量 key 值为value apt.variables.get("key"); // 获取环境变量 key的值 apt.variables.delete("key"); // 删除环境变量 keyapt.variables.clear(); // 清空环境变量
复制代码

2、设置全局变量

apt.globals.set("key", "value"); // 设置一个全局变量 key 值为value apt.globals.get("key"); // 获取全局变量 key的值 apt.globals.delete("key"); // 删除全局变量 key apt.globals.clear(); // 清空全局变量
复制代码

3、检查 response body 中是否包含某个 string

apt.assert('response.raw.responseText=="test"');  // 检查响应文本是否等于test字符串 apt.assert('response.raw.responseText.indexOf("test") > -1');  // 检查响应文本是否含有test字符串
复制代码

4、检测返回 JSON 中的某个值是否等于预期的值

apt.assert('response.json.hasOwnProperty("errcode")'); // 检测返回json对象的是否含有errcode字段apt.assert('response.json.errcode=="success"');  // 检测返回json对象的errcode字段是否等于success字符串apt.assert('response.json.errcode.indexOf("success") > -1');  // 检测返回json对象的errcode字段是否含有success字符串apt.assert('response.json.errcode!="success"');  // 检测返回json对象的errcode字段是否不等于success字符串apt.assert('response.json.errcode>=1');  // 检测返回json对象的errcode字段是否大于1apt.assert('response.json.errcode==null'); // 检测返回json对象的errcode字段是否是null
复制代码

5、测试 response Headers 中的某个元素是否存在(如:Content-Type)

apt.assert('response.headers.hasOwnProperty("content-type")');
复制代码

6、验证 Status code(响应码)的值是不是等于 200

apt.assert('response.raw.status==200');
复制代码

7、验证 Response time(请求耗时)是否大于某个值

apt.assert('response.raw.responseTime>=100');
复制代码


用户头像

Proud lion

关注

还未添加个人签名 2021.08.16 加入

还未添加个人简介

评论

发布
暂无评论
接口管理工具APIPOST的预/后执行脚本里,常见的响应参数变量和常用方法集合——apipost