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

如何在Postman预请求脚本中读取.json文件作为POST负载并修改数据

实现方法

当然可以在Postman的Pre-request Script中完成这个需求,以下是具体步骤:

方案一:嵌入JSON模板(通用所有Postman版本)

这种方法无需读取本地文件,直接把JSON模板写进脚本或存在环境变量里,适配浏览器版和桌面版Postman:

  1. 编写Pre-request Script代码
    在请求的「Pre-request Script」标签页中添加以下代码:

    // 定义JSON请求模板
    let payloadTemplate = {
      "email": "test@gmail.com",
      "password": "Abc12345",
      "timezone": "Europe/Berlin"
    };
    
    // 生成动态唯一邮箱(用时间戳保证不重复)
    let dynamicEmail = `test_${Date.now()}@gmail.com`;
    
    // 替换模板中的邮箱字段
    payloadTemplate.email = dynamicEmail;
    
    // 将修改后的Payload存入环境变量,供请求Body调用
    pm.environment.set("modifiedPayload", JSON.stringify(payloadTemplate));
    
  2. 配置请求Body
    切换到请求的「Body」标签页,选择raw格式并设置为JSON,然后输入:

    {{modifiedPayload}}
    

    这样请求发送时会自动引用生成的动态Payload。

方案二:桌面版Postman直接读取本地JSON文件

如果你的JSON内容需要单独维护,桌面版Postman可以直接读取本地文件,代码如下:

// 读取本地JSON文件(替换为你的文件绝对路径)
pm.sendRequest('file:///Users/xxx/path/to/your/payload.json', (err, res) => {
  if (!err) {
    let payloadTemplate = res.json();
    // 生成动态邮箱
    let dynamicEmail = `test_${Date.now()}@gmail.com`;
    // 替换邮箱字段
    payloadTemplate.email = dynamicEmail;
    // 存入环境变量
    pm.environment.set("modifiedPayload", JSON.stringify(payloadTemplate));
  } else {
    console.error("读取文件失败:", err);
  }
});

后续请求Body的配置和方案一一致。

注意事项

  • 浏览器版Postman受限于权限,无法读取本地文件,建议使用方案一
  • 动态邮箱的生成规则可按需调整,比如添加随机字符串增强唯一性:test_${Date.now()}_${Math.random().toString(36).slice(2,5)}@gmail.com

内容的提问来源于stack exchange,提问作者vlatko606

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 18:55:18