Postman身体参数可以包含数字环境变量吗?

时间:2018-03-23 01:51:43

标签: postman

在邮递员请求json正文中,我想将变量设置为变量。

这适用于内置$ timestamp,但我可以为其他数字做吗?

似乎邮递员总是将变量作为字符串编码发送。

例如,在预请求脚本中:

var lat = +pm.environment.get('lat');
lat = clat + 0.001;
console.log(lat);
pm.environment.set('lat',  Number.parseFloat(lat).toPrecision(5));

身体:     {       “unixTimeStamp”:{{$ timestamp}},//确定

  "lng":  145.123,   // OK

  "lat":  {{$lat}},   // Fails
}

这发送:     {       “unixTimeStamp”:1521769729,

  "lng":  145.123,  

  "lat":  "-37",   // Web service rejects this field.
}

我相信数字总是被编码为字符串。

1 个答案:

答案 0 :(得分:1)

变量名前面的$仅用于内置动态变量的几个地方。例如$ timestamp,$ guid和$ randomInt。

Environment文件中的每个值都存储为字符串,因此您需要以某种方式解析它以获取所需的值。

您可以使用parseInt(pm.environment.get('my_string')将已保存的字符串"100"转换为请求中的数字100,也可以parseFloat,具体取决于您的需要。

然后在请求正文中使用 "lat": {{lat}},