使用场景
使用postman时,偶尔会遇到调用某个需鉴权的接口, 这种接口往往会调用一个获取token的接口,而token存在失效时间,失效后需要修改header中的token值,比较麻烦.
这个时候我们可以利用postman的pre-request-script功能,自动的调用token接口,将生成的token添加至header中.
postman的pre-request-scirpt功能可以在请求发送前执行脚本, 并可以访问postman的全局变量和request的header.
代码示例:
代码如下:
//获取全局变量
var gateway = pm.globals.get("devGateway");
console.log(gateway);
//构造post请求
const postRequest = {
url: gateway + "/api/token/account/login/mock",
method: 'POST',
header: {
'Content-Type': 'application/json',
'X-Foo': 'bar'
},
body: {
mode: 'raw',
raw: JSON.stringify({ "username": 'shenhongliang' })
}
};
//发送post请求
pm.sendRequest(postRequest, function (err, response) {
var token = response.json().data.token;
//回写token到header
var headers = pm.request.headers;
headers.add({"key":"Authorization","value":token});
console.log(headers);
console.log(response.json().data.token);
});
执行顺序: