为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 JMETER 的 JSON 标头中调用 javascript 变量

如何在 JMETER 的 JSON 标头中调用 javascript 变量

开心每一天1111 2023-03-03 15:50:17
我只有 Jmeter 中的“JSR223 后处理器”和下面的脚本var context_data = {"referralId":${referral_id}};console.log(context_data);const secret = CryptoJS.enc.Utf8.parse(JSON.stringify(context_data))console.log(secret);const encoded_referral_id = CryptoJS.enc.Base64.stringify(secret);console.log(encoded_referral_id);上面的脚本我需要获取“encoded_referral_id”值并且需要传递另一个输入请求标头部分。有人可以帮助我如何获取“encoded_referral_id”并将其传递给另一个子序列 API 标头。
查看完整描述

2 回答

?
梦里花落0921

TA贡献1772条经验 获得超6个赞

  1. 从 JMeter 3.1 开始,您应该使用 JSR223 测试元素和 Groovy 语言编写脚本,使用 JavaScript 是某种形式的性能反模式,因此请考虑迁移到 Groovy 语言

  2. 切勿将 JMeter 函数或变量内联到 JSR223 脚本中

  3. 您的所有代码都是 Base64 编码,因此您可以使用__base64Encode() 函数,这将更加简单快捷

  • 使用__groovy() 函数的示例实现:

     ${__groovy(('{"referralId":' + vars.get('referral_id') + '}').bytes.encodeBase64().toString(),)}
  • 使用 __base64Encode() 函数的示例实现:

     ${__base64Encode({"referralId":${referral_id}},)}

演示:

//img1.sycdn.imooc.com//6401a6e40001234419171026.jpg

查看完整回答
反对 回复 2023-03-03
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

您可以在JSR223 后处理器中创建一个变量,并在包括标头在内的后续组件中读取该变量的值。

步骤 1:创建变量 encoded_referral_id

vars.put("ENCODED_REFERRAL_ID", encoded_referral_id )

第 2 步:读取变量的值

${ENCODED_REFERRAL_ID}

JMeter Variables API 文档可能有助于了解操作变量的可用方法。


查看完整回答
反对 回复 2023-03-03
  • 2 回答
  • 0 关注
  • 147 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信