如何在 JMeter 中使用 beanshell 生成哈希(SHA1)?

How to generate hash(SHA1) using beanshell in JMeter?

我想如何在 JMeter 中使用 beanshell(SHA1) 生成哈希来注册应用程序?

我还不能从网上得到实质性的答复

生成哈希非常简单,只需使用 DigestUtils class from Apache Commons Codec 库(它是 JMeter 的一部分,因此您不需要安装任何外部的东西)

类似于:

import org.apache.commons.codec.digest.DigestUtils;

String foo = "bar";
String sha1Hex = DigestUtils.sha1Hex(foo);

通常需要 SHA1 来签署对受 OAuth 保护的应用程序的请求,如果是您的情况,我相信 How to Run Performance Tests on OAuth Secured Apps with JMeter 会非常有帮助。

有一个新的 JMeter 函数 __digest,目前在 nightly builds 中,可用于对字符串进行编码

在您的情况下,要将 myVar 变量的结果保存在 sha1Value 变量中,请使用以下内容:

${__digest(SHA-1,${myVar},,,sha1Value)}

第四个参数是大写的,所以你可以发送true来自动大写。