如何直接从邮递员的预请求脚本中获取请求体

时间:2017-11-13 00:25:26

标签: api request postman

我创建了JSON对象( movieData )并将其保存为全局变量(我的所有测试用例)。 我希望获取部分数据(每次单个案例)并将其从请求前脚本发送到请求正文

const movieData = {
   env: "testing",
   domain: "",
   tests: {
     test1: { 

       body: {
         movie_id: 568,
         title: "wonder-woman",
         description: "bla bla bla",
       }
       .... 
     },
     test2: { 

       body: {
         movie_id: 232,
         title: "spider-man",
         description: "bla bla bla",
       }
       .... 
     },
     test3: { 

       body: {
         movie_id: 212,
         title: "just-woman",
         description: "bla bla bla",
       }
       .... 
     },
     test4: { 

       body: {
         movie_id: 534,
         title: "just-man",
         description: "bla bla bla",
       }
       .... 
     }

   }
}

预请求:

var movies = JSON.parse(pm.globals.get('movieData')); const test = movies.tests.test1.body; pm.globals.set('test', test);

体:

"{{test}}"

有人帮忙怎么做?

2 个答案:

答案 0 :(得分:2)

你认为......动态添加技巧{/ 1}}会更容易。

根据文档..动态变量是

这是我的电子邮件正文..

yT2="${yT2#"${yT2%%[![:space:]]*}"}"

enter image description here

我正在动态更改预请求脚本中的{{email}}和{{target}} ...

注意 {{target}} 位于网址,不含引号,其中" {{email}}& #34; 在正文中并且有 " "

enter image description here

答案 1 :(得分:0)

预请求脚本

var jsonData = {
  "method": "test",
  "params": {
    "token": "hello"
  },
  "moreData": "2.0"
};


pm.globals.set("myreqbody", JSON.stringify(jsonData));

身体

{{myreqbody}}