如何从 beanshell 预处理器获取 Sampler Body 数据 - JMeter

How to get Sampler Body data from beanshell Pre-Processor - JMeter

我有如下 Http Sampler 主体, {"Uname":"admin","Signature":"${Sign}","LoginTime":"${LogTime}","Action":"Do_Action" }

我必须从上面的正文中获取 "Action" 的值,并将该值发送到预处理器,这将有助于执行进一步的操作。

帮我解决这个问题...!!

谢谢!

我建议切换到 JSR223 PreProcessor and Groovy 语言:

  1. Groovy 有 built-in JSON support
  2. Groovy 执行 much better than Beanshell

示例 Groovy 从请求正文中提取 "Action" 并将其存储到 ${action} JMeter 变量的代码如下所示:

def body = new groovy.json.JsonSlurper().parseText(sampler.getArguments().getArgument(0).getValue())
vars.put('action', body.Action)

有关详细信息,请参阅 Groovy is the New Black 文章。