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

如何在Pre-request Script中终止Collection Runner迭代?

解决Postman Collection Runner遇空Document ID终止迭代的方案

核心思路

Postman Collection Runner默认会遍历CSV所有行,要中途终止迭代,关键用postman.setNextRequest(null)——这个方法会让Runner停止执行后续所有请求(你的集合只有单个请求,所以直接终止整个迭代流程)。

1. 在Pre-request Script中加空值检测

打开你的请求,切换到Pre-request Script标签,粘贴以下代码:

// 取出Document ID并去除前后空格,避免把含空格的行误判为空
const docId = pm.collectionVariables.get('Document ID')?.trim() || '';

if (docId === '') {
    // 终止后续迭代
    postman.setNextRequest(null);
    console.log('检测到空Document ID,停止执行');
}

这样一旦碰到空的Document ID,当前请求不会执行,直接终止整个Runner流程。

2. 处理非空但无效的无关行

如果CSV末尾的无关行Document ID列不是空,而是无效内容(比如文字、乱码),可以扩展判断逻辑,比如只允许合法的ID格式:

const docId = pm.collectionVariables.get('Document ID')?.trim() || '';

// 示例:仅接受非空且为数字的ID,不符合就终止
if (!docId || isNaN(docId)) {
    postman.setNextRequest(null);
    console.log('无效Document ID,停止执行');
}

注意点

  • 确保CSV列标题和你引用的变量名Document ID完全一致(大小写敏感)。
  • 如果变量不存在(比如CSV行没有对应列),pm.collectionVariables.get()会返回undefined,代码里的?.trim() || ''是为了避免报错,统一转为空字符串处理。
  • 要是想执行完当前空行的请求再终止,把代码移到Test标签页即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 14:30:17