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

如何在Postman前置脚本中校验请求体字段并阻止请求发送

Postman前置脚本校验请求体必填字段并终止请求

假设你的POST请求体格式如下:

{
    "callbackUrl": "http://test.io",
    "secret": "ygc28gc2VjcmV0"
}

要在Pre-req Script里校验callbackUrl和secret这两个必填字段,并且在校验不通过时阻止请求发送,按以下步骤写脚本:

1. 解析请求体并定义必填字段

先把请求体解析成可操作的JSON对象,同时列出所有需要校验的必填字段:

// 获取当前请求的请求体并解析为JSON
const requestBody = pm.request.body.raw;
let bodyData;
try {
    bodyData = JSON.parse(requestBody);
} catch (e) {
    pm.test("请求体格式错误", () => {
        throw new Error("请求体不是合法的JSON格式");
    });
    pm.setNextRequest(null); // 终止后续请求
    return;
}

// 定义必填字段列表
const requiredFields = ["callbackUrl", "secret"];

2. 执行字段校验

遍历必填字段列表,检查每个字段是否存在且不为空值:

// 校验每个必填字段
requiredFields.forEach(field => {
    if (!bodyData.hasOwnProperty(field) || bodyData[field] === undefined || bodyData[field] === "") {
        pm.test(`必填字段校验失败: ${field}`, () => {
            throw new Error(`缺少必填字段 ${field} 或字段值为空`);
        });
        pm.setNextRequest(null); // 终止请求发送
    }
});

关键说明

  • pm.setNextRequest(null)是核心:调用这个方法会直接终止当前请求的发送,不管后续逻辑
  • 用pm.test()包裹错误提示,会在Postman的"Tests"标签页显示校验结果,方便排查问题
  • 先做JSON格式校验,避免因请求体格式错误导致后续校验崩溃

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 19:39:56