== 本篇文章已在同名公众号【软件测试必备技能】发布,关注并发送【Postman】可免费阅读。 ==
- 在之前的文章中介绍过postman中的两个脚本——pre-request script或test script。
(pre-request script详细介绍、Test script详细介绍)- 在这两个位置不仅仅是可以对请求参数或是返回结果进行处理,甚至可以在这两个位置请求接口,并使用返回值。
- 这是个非常好用的功能。比如请求购买前需要先通过登录接口获取token,这种情况下可以直接在pre-request script请求登录接口,并将返回值中的token设置为接口请求参数
文章目录
一、pm.sendRequest() 方法
- postman的脚本中,使用pm.sendRequest()方法进行接口请求,格式如下:
pm.sendRequest("https://postman-echo.com/get", function (err, response) { console.log(response.json()); });
- pm.sendRequest() 总共传入两个参数:
- 第一个是接口请求参数,可以直接是URL(这种情况默认发送get请求),也可以使用JSON格式提供完整的请求配置,包括标头、方法、正文等
- 第二个参数是接口返回结果,可以在控制台打印出需要的数据,也可以在此对返回值进行处理。
- pm.sendRequest() 总共传入两个参数:
- 发送请求之后,脚本内的请求也会在console中打印,颜色为稍浅的灰色。
(之间专栏也有介绍过控制台,文章地址:console控制台)
- 与正常的接口请求的日志放在一起可以看到明显的颜色区分
二、在脚本中进行GET请求
- 如果只需要使用到URL进行get请求,可以直接使用填入URL,可以直接使用上述的示例
- 将"https://postman-echo.com/get" 替换为需要请求的接口URL即可:
pm.sendRequest("https://postman-echo.com/get", function (err, response) { console.log(response.json()); });
- 如果需要用的header,则可以将请求参数填入json,如下:
- 定义一个const变量,按格式填入参数
const getRequest = { url: 'https://postman-echo.com/get', method: 'GET', header: { 'Content-Type': 'application/json', 'X-Foo': 'bar' }, };
- 再将参数代入pm.sendRequest() 方法中,完整代码:
const getRequest = { url: 'https://postman-echo.com/get', method: 'GET', header: { 'Content-Type': 'application/json', 'X-Foo':