在JMeter中提取十六进制数据

在JMeter中提取十六进制数据,jmeter,hex,Jmeter,Hex,我想从JMeter中的响应中提取十六进制数据 我已经提取了文本值,我想把它转换成十六进制,但我不知道怎么做。 如果您有另一种方法来提取JMeter中的十六进制数据,我将采用它 编辑 我试着放上一个Beanshell后处理器样本: import java.math.BigInteger; vars.put("CHALLENGE",new BigInteger(1, vars.get("CHALLENGE").getBytes(/*YOUR_CHARSET?*/))); 但我有一个错误: Sta

我想从JMeter中的响应中提取十六进制数据

我已经提取了文本值,我想把它转换成十六进制,但我不知道怎么做。 如果您有另一种方法来提取JMeter中的十六进制数据,我将采用它

编辑

我试着放上一个Beanshell后处理器样本:

import java.math.BigInteger;
vars.put("CHALLENGE",new BigInteger(1, vars.get("CHALLENGE").getBytes(/*YOUR_CHARSET?*/)));
但我有一个错误:

 Static method format( java.lang.String, java.math.BigInteger ) not found in class'java.lang.String'

您可以使用以下命令执行转换:

演示:

您应该使用

返回整数参数的字符串表示形式,以16为基数,为无符号整数

在您的情况下,要覆盖(为什么不使用不同的变量?)变量:

vars.put("CHALLENGE", Integer.toHexString(vars.get("CHALLENGE").getBytes()));

请更新您的问题,以包括您迄今为止尝试的代码,以及您遇到的错误/问题。我的答案有帮助吗?是的,对不起,我忘记验证您的答案。谢谢你,伙计!我尝试了你的方法,效果很好,但当我使用正则表达式提取器用JMeter提取二进制数据时,似乎二进制数据转换得不好。就是这样!谢谢:)