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

如何在JMeter预处理器中将JSON请求转换为Base64编码

JMeter实现JSON内容Base64编码并传入请求的操作步骤

1. 添加前置处理器

在目标采样器(如HTTP请求)的子节点下,添加JSR223 预处理器:右键采样器 → 添加 → 前置处理器 → JSR223 预处理器。

2. 编写处理脚本

在JSR223预处理器的「语言」下拉框选择groovy,然后在脚本输入框填入以下代码:

// 定义目标JSON结构
def targetJson = [
    [
        "value": "3",
        "type": "string",
        "label": "Repaymentday"
    ],
    [
        "value": "3",
        "type": "string",
        "label": "Repaymentday"
    ]
]
// 转换为标准JSON字符串
def jsonString = new groovy.json.JsonBuilder(targetJson).toString()
// 编码为Base64(指定UTF-8字符集避免乱码)
def base64Encoded = jsonString.getBytes("UTF-8").encodeBase64().toString()
// 存入JMeter变量,变量名为requestBase64,可自定义
vars.put("requestBase64", base64Encoded)

3. 引用编码后的值

在采样器的请求参数、请求头、请求体等位置,直接使用${requestBase64}即可调用生成的Base64编码值。

注意事项

  • 必须使用Groovy作为执行语言,性能远高于BeanShell,JMeter 3.1及以上版本已默认集成Groovy环境,无需额外安装。
  • 若需要保留JSON的格式化缩进,可将代码中的.toString()替换为.toPrettyString()。
  • 若JSON内容是从其他变量动态获取的,直接替换targetJson的赋值逻辑即可,后续编码和存储逻辑无需调整。

内容的提问来源于stack exchange,提问作者mahaveerr R

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 01:15:02