You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postman如何遍历项目ID数组批量发起请求获取各项目员工费率数据

Postman遍历项目ID批量请求Teamwork接口方案

现有流程说明

  • 已配置第一个GET请求拉取全量项目列表,在请求的Tests标签编写脚本提取项目ID存入数组,现有脚本如下:
var jsonData = JSON.parse(responseBody);
var list = (jsonData.projects).length;
var a=[];
for (var i = 0; i < list; i++) {
  var counter = jsonData.projects[i];
  IDs=counter.id 
  a.push(IDs)
}
postman.setEnvironmentVariable("id", a);

脚本运行后生成名为id的环境变量,值为全量项目ID组成的数组(Postman环境变量仅支持字符串类型存储,实际保存值为逗号分隔的ID字符串)。

  • 已配置第二个请求用于拉取单个项目员工费率,请求地址为{{Domain}}/projects/{id}/rates.json,Domain环境变量已配置完成可正常调用,需要遍历所有项目ID替换路径参数完成批量请求。

实现步骤

  • 脚本位置选择:把批量请求逻辑直接追加在第一个拉取项目列表请求的Tests标签现有代码末尾即可,不需要修改第二个费率请求的配置,也不需要在第二个请求的Pre-request Script/Tests标签额外编写代码。
  • 追加的可直接运行脚本代码:
// 解析环境变量中存储的项目ID数组
const projectIdList = pm.environment.get("id").split(",");
const requestDomain = pm.environment.get("Domain");

// 遍历ID逐个发送费率查询请求
projectIdList.forEach(currentId => {
  const reqUrl = `${requestDomain}/projects/${currentId}/rates.json`;
  pm.sendRequest(reqUrl, (error, response) => {
    if (error) {
      console.log(`ID为${currentId}的项目请求失败:`, error);
      return;
    }
    // 响应处理逻辑可写在这里,比如打印结果、转存变量、导出数据等
    console.log(`项目${currentId}费率数据:`, response.json());
  });
});

注意:上述写法为异步并发请求,如果需要按ID顺序同步拉取、或需要汇总所有响应结果统一处理,将forEach循环替换为普通for循环配合async/await编写即可。


内容的提问来源于stack exchange,提问作者Pierre-Luc Miquelon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 17:06:28