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

如何为Postman全局变量传入多个值?附报错示例

解决Postman全局变量数组值的引用错误问题

Hey there! Let's break down why you're getting that ReferenceError | test is not defined error and fix it step by step.

问题根源

你遇到这个错误主要有两个原因:

  1. 变量引用方式错误:你直接在脚本里写test来调用全局变量,但Postman不会把全局变量直接暴露为顶层变量,必须用官方方法获取。
  2. 变量类型不匹配:你的test变量类型是text,值是数组格式的字符串("[\"a\",\"b\"]"),Postman不会自动把这个字符串转换成真正的JavaScript数组。

方案一:将全局变量设为JSON类型(推荐)

Postman支持直接存储数组/对象,只要把变量类型改成json就行:

  • 打开Postman的全局变量管理界面
  • 找到test变量,把type从text改成json
  • 在value字段里直接输入["a","b"](不用加额外引号,像写JS数组那样直接写)
  • 保存后,在脚本里这样使用:
    const testArray = pm.globals.get("test");
    console.log(testArray[0]); // 会输出"a"
    

方案二:手动将字符串解析为数组(无法修改变量类型时用)

如果因为某些原因不能改变量类型,你可以在脚本里用JSON.parse()把字符串转成数组:

// 先获取全局变量的字符串值
const testString = pm.globals.get("test");
// 把字符串转换成真正的数组
const testArray = JSON.parse(testString);
// 现在就能正常用数组的方法了
console.log(testArray[1]); // 会输出"b"

重要提醒

永远记住:Postman全局变量不能直接用变量名裸写调用,必须用pm.globals.get("变量名")来获取——不管变量是什么类型,直接写test都会抛出引用错误。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 06:29:51