【问题标题】:How to refrence body in the __digest function in JMeter?如何在JMeter的_摘要函数中引用body?
【发布时间】:2021-03-16 20:11:26
【问题描述】:

我计划在 JMeter 中将摘要标头添加到我的“HTTP 标头管理器”中。 我打算使用https://jmeter.apache.org/usermanual/functions.html中引用的__digest函数。

一个例子是:

${__digest(MD5,${message-body},,,)}

我应该如何根据 RFC3230 引用消息体?

【问题讨论】:

  • 什么意思? message-body 变量应该包含整个请求正文
  • 我的意思是,你必须以某种方式将发布请求的正文分配给这个变量 ${message-body}。如何完成这项任务。

标签: jmeter


【解决方案1】:

您可以使用__groovy() function 代替${message-body} 变量并在运行时动态检索请求正文。

获取当前请求正文的 Groovy 语法:

${__groovy(ctx.getCurrentSampler().getArguments().getArgument(0).getValue(),)}

结合__digest()函数:

${__digest(MD5,${__groovy(ctx.getCurrentSampler().getArguments().getArgument(0).getValue(),)},,,)}

演示:

在上面的例子中:

请参阅 JavaDoc 了解所有可用功能,并参阅 Top 8 JMeter Java Classes You Should Be Using with Groovy 文章以了解有关可用于 JSR223 Test Elements 的各种 JMeter API 快捷方式的更多信息

【讨论】:

  • 你知道如何在摘要上应用 Base64 编码吗?当我使用函数 __Base64Encode() 时,我从邮递员函数 CryptoJS.enc.Base64.stringify() 收到不同的值?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多