Loading

postman 脚本和变量

背景

后端接口有登录或鉴权验证,通过 swagger 调用比较费劲,并且 java 的 swagger 库(不够自动化,嵌套类支持需要各种配置才能正常显示 schema)个人感觉也没有 .net core 的 swagger 库好用,所以 swagger 有就行了,我不是很想配那么多注解什么的。

我平时都是 postman 来做客户端,为了用起来更舒服,研究了一下脚本和变量,十分好用,但也是 postman 强大功能的九牛一毛。

步骤

创建文件夹

创建一个 backend-api 文件夹

配置变量

点击文件夹,点击 Variables tab,配置以下键值对,这很简单,就像声明变量

配置脚本

这里配置的是 Pre-request Script,即在每次请求发送前执行,具体操作如下:

点击文件夹,点击 Pre-request Script tab,然后粘贴以下代码:

pm.request.headers.add({
    key: pm.collectionVariables.get("tokenName"),
    value: `Bearer ${pm.collectionVariables.get("tokenValue")}`
});

这段代码的意思是,每次请求前,在 request header 中加一个键值对,并且 key 和 value 都是从变量中动态读取的

配置登录接口的脚本

需求:在每次登录后,获取登录返回的 token 信息,并保存在变量中,具体操作如下:

新建一个 tab 页,配置登录的地址和其他参数信息,然后保存到先前创建的 backend-api 文件夹中。

然后点击登录 tab 的 Tests tab 页,粘贴以下代码:

var data = pm.response.json();
pm.collectionVariables.set("tokenName", data.token.name);
pm.collectionVariables.set("tokenValue", data.token.value);

这段代码的意思是,获取接口返回值并转为 json 对象,然后设置全局变量 tokenNametokenValue 的值。

测试

新增一个有登录验证或鉴权的接口,然后保存到先前创建的 backend-api 文件夹中。

然后先 send 一次登录接口,再去调用有登录验证或鉴权的接口,就可以了。

posted @ 2021-08-09 00:00  myEsn2E9  阅读(73)  评论(0编辑  收藏  举报