Postman 邮递员请求中的未定义变量

Postman 邮递员请求中的未定义变量,postman,Postman,我有一个get请求,测试脚本如下 var jsonData = JSON.parse(responseBody); postman.setEnvironmentVariable("var1", jsonData.var1); postman.setEnvironmentVariable("var2", jsonData.var2); 但是,对请求的响应可能包括也可能不包括所有值,例如 答复1 { "var1": "value1", "var2": "value2" } 响应2 { "var2

我有一个get请求,测试脚本如下

var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("var1", jsonData.var1);
postman.setEnvironmentVariable("var2", jsonData.var2);
但是,对请求的响应可能包括也可能不包括所有值,例如

答复1

{
"var1": "value1",
"var2": "value2"
}
响应2

{
"var2": "value2"
}
我在下一个Put请求中使用上述数据。Put请求的主体如下所示

{
  "var1": "{{var1}}",
  "var2": "{{var2}}"
}
我面临的问题是,如果之前的Get请求没有属性值(如response2),那么{{var1}}(即变量名)将被存储在数据库(mysql)中。我尝试在Put请求中删除变量周围的双引号,但这给了我

查找对象键字符串开头的无效字符“{”

错误

你能为这种情况提出最好的解决方案吗


谢谢

你的邮递员版本是什么?你能试着在第一个请求中循环数据,看看
var1
/
var2
属性是否存在,如果存在,将它们设置为变量。后续请求稍微复杂一些,因为很难在请求体中添加逻辑-可能工作流可以帮助你在postman版本4.10.2中也有类似的修复程序,你能验证一下吗?版本5.3.2 win32 10.0.16299/x64