Jmeter 如何在Beanshell预处理器中获取HTTP POST请求正文?

Jmeter 如何在Beanshell预处理器中获取HTTP POST请求正文?,jmeter,beanshell,Jmeter,Beanshell,我在使用jmeter时遇到了一些问题。这是我的用例,我使用CSV数据源参数来构造HTTP POST请求,请求正文从CSV列读取 其中包含一些占位符,如${source\u id} 我想用jmeter参数替换这些占位符,我正在通过regex/json提取器初始化这些占位符(从上次PUT请求的响应中读取)。我尝试在CSV文件中使用jmeter变量名,但变量值没有被替换。我想我必须使用beanshell预处理器来修改HTTP POST请求主体。有人能帮我找到获取HTTP POST请求正文的方法吗

我在使用jmeter时遇到了一些问题。这是我的用例,我使用CSV数据源参数来构造HTTP POST请求,请求正文从CSV列读取

其中包含一些占位符,如
${source\u id}

我想用jmeter参数替换这些占位符,我正在通过regex/json提取器初始化这些占位符(从上次PUT请求的响应中读取)。我尝试在CSV文件中使用jmeter变量名,但变量值没有被替换。我想我必须使用beanshell预处理器来修改HTTP POST请求主体。有人能帮我找到获取HTTP POST请求正文的方法吗

String requestBody = sampler.getArguments().getArgument(0).getValue();
应该有帮助

sampler
是父sampler类实例的缩写,在您的示例中,请参阅JavaDoc以获取所有可用的方法和字段


我建议考虑迁移到和语言,因为它比Beanshell更快,消耗的资源更少。有效的Beanshell代码将是有效的Groovy代码,因此您应该能够转换为JSR223元素,而无需进行任何更改或进行最小的更改。有关更多详细信息,请参阅文章。

类似

String requestBody = sampler.getArguments().getArgument(0).getValue();
应该有帮助

sampler
是父sampler类实例的缩写,在您的示例中,请参阅JavaDoc以获取所有可用的方法和字段


我建议考虑迁移到和语言,因为它比Beanshell更快,消耗的资源更少。有效的Beanshell代码将是有效的Groovy代码,因此您应该能够转换为JSR223元素,而无需进行任何更改或进行最小的更改。有关更多详细信息,请参阅文章