因为项目中每个接口都需要传递加密参数sign值,并且该sign值是根据调用接口的参数来计算的,所以就需要在发起请求前,先调用sign接口,把请求的参数传给sign接口,然后把返回的sign值给请求使用。
一开始是手动访问,虽然麻烦点,但是简单,只需要点两哈就行了。后来想使用postman自动化就遇到难题了。
网上都说的是可以使用Pre-request Script来写执行请求前的操作。但是别人都是访问一个token接口,不需要使用当前接口的参数。。。 废话不多说,上最后结果
1、首先在request的Pre-request Script中添加代码
// 获取当前request中的所有参数 var param = pm.request.url.query; // console.log("获取链接参数:"+param) // 创建访问sign的链接 var signUrl = '神秘地址'+param; pm.sendRequest(signUrl, function (err, response) { console.log(response.text()); // 把得到的结果,设置环境变量sign pm.environment.set("sign", response.text()); });2、在request的Params中添加sign的使用。{{sign}}里面的sign是你在设置环境变量时自定义变量名
刚开始只是在request里面添加,每新增一个借口都需要添加一次(因为我们的每个接口都需要这个sign参数),后来又发现可以在Collections中添加Pre-request Script,简直是方便的一匹啊
新建Collections时可以直接添加,如果是已有Collections,编辑Collections就可以了