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

JMeter中JSR223预处理器替换请求Body值失败问题求助

JMeter JSR223 PreProcessor 请求Body替换失效问题

你的代码存在两处关键问题,导致替换不生效:

  • 语法错误:代码末尾多了一个多余的},正确的replace调用应该是body.replace("${date}", date)
  • 字符串不可变特性忽略:Java/Groovy中的String是不可变类型,replace()方法不会修改原body变量,而是返回一个新的字符串对象。你没有将替换后的结果重新设置回请求采样器,所以原始Body不会被更新。

正确的实现代码应该是这样:

// 获取当前采样器的原始请求Body
def originalBody = sampler.getBodyAsString()
// 执行替换操作,接收返回的新字符串
def updatedBody = originalBody.replace("${date}", date)
// 将修改后的Body重新设置到采样器中
sampler.setBody(updatedBody)

额外注意点:

  • 确保date变量已经被正确初始化并赋予了预期值
  • 这个JSR223 PreProcessor必须直接关联到需要修改Body的HTTP请求采样器上,否则不会对目标请求生效

内容的提问来源于stack exchange,提问作者Andreas Panteli

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 12:52:34