天下苦 postman 久矣!
原文链接:
JavaScript API Reference – Bruno Docs
JavaScript API 参照
这是 Bruno 中脚本功能的完整 API 参考集。
请求
这个 req 变量在你的脚本和测试上下文中可用。
以下是 req 上可用方法的 API 文档
getUrl
获取当前请求 url
示例:
let url = req.getUrl();
setUrl
设置当前请求 url
示例:
req.setUrl("https://api.github.com/search/repositories?q=vue");
getMethod
获取当前请求方法
示例:
const method = req.getMethod();
setMethod
设置当前请求方法
示例:
req.setMethod("POST");
getHeader
按名称获取请求标头
示例:
req.getHeader("transaction-id");
getHeaders
获取当前请求标头
示例:
const headers = req.getHeaders();
setHeader
按名称设置请求头部
示例:
req.setHeader( "content-type", "application/json");
setHeaders
设置当前请求标头
示例:
req.setHeaders({ "content-type": "application/json", "transaction-id": "foobar"});
getBody
获取当前请求正文/有效负载
示例:
const body = req.getBody();
setBody
设置请求正文/有效负载
示例:
req.setBody({ "username": "john nash", "password": "governingdynamics"});
setMaxRedirects
设置要跟踪的最大重定向数
示例:
req.setMaxRedirects(5);
响应
此 res 变量在脚本和测试上下文中可用。
下面是 res 对象的可用属性。
| 属性 | 描述 |
|---|---|
| status | The response status code |
| statusText | The response status text |
| headers | The response headers |
| body | The response body |
| responseTime | The API response time |
以下是 res 对象上可用的方法。
getStatus
获取响应状态
示例:
let status = res.getStatus();
getHeader
按名称获取响应头部
示例:
let transactionId = res.getHeader("transaction-id");
getHeaders
获取响应头部
示例:
let headers = res.getHeaders();
getBody
获取响应数据
示例:
let data = res.getBody();
getResponseTime
获取响应时间
示例:
let responseTime = res.getResponseTime();
Bru
bru 变量在您的脚本和测试上下文中可用。它公开了一些方法,允许您进行交互,例如流程变量、环境变量和集合变量。
以下是 bru 上可用方法的 API 文档
帮助
sleep
在指定的持续时间内暂停执行。这对于引入延迟或等待特定时间后再继续下一个操作非常有用。
示例:
await bru.sleep(3000);
disableParsingResponseJson
要防止自动解析 JSON 响应正文并直接使用原始数据,您可以在请求的请求前脚本中使用以下表达式。
示例:
bru.disableParsingResponseJson();
Node 进程环境
Bruno 允许您动态获取 Node 进程环境变量。
getProcessEnv
获取 Node 进程环境变量。这允许使用 Secret 令牌,而无需将 Secret 提交到版本控制。
示例:
let secret_token = bru.getProcessEnv("secret_access_token");
环境
Bruno 允许您动态获取和设置 Bruno 环境变量。
getEnvVar
获取 Bruno 环境变量
示例:
let token = bru.getEnvVar("access_token");
setEnvVar
设置 Bruno 环境变量
示例:
function onResponse(res) {let data = res.getBody();let token = bru.setEnvVar("access_token", data.token);}
集合变量
Bruno 允许您动态获取集合变量。
getCollectionVar
获取集合变量
示例:
let namespace = bru.getCollectionVar("namespace");
文件夹变量
Bruno 允许您动态获取文件夹变量。
getFolderVar
获取文件夹变量
示例:
let company = bru.getFolderVar("company");
运行时变量
Bruno 允许您动态获取、设置和删除运行时变量。
getVar
获取运行时变量
示例:
let petId = bru.getVar("petId");
setVar
设置 runtime 变量
示例:
let data = res.getBody();bru.setVar("petId", data.id);
deleteVar
删除运行时变量
示例:
bru.deleteVar("petId");
请求顺序
您可以影响请求运行进程 (UI) 或 CLI 运行请求的顺序。
setNextRequest
默认情况下,集合运行进程 (UI) 和 CLI 按顺序运行请求。您可以通过使用下一个要运行的请求的名称调用 setNextRequest 来更改顺序。这仅适用于 post-request 脚本或 test-script。
示例:
bru.setNextRequest("Get process status");
您还可以通过将下一个请求显式设置为 null 来中止运行
bru.setNextRequest(null); // aborts the run gracefully