代码之家  ›  专栏  ›  技术社区  ›  Léandre

在JMeter中提取十六进制数据

  •  0
  • Léandre  · 技术社区  · 6 年前

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

    我已经提取了文本值,我想把它转换成十六进制,但我不知道怎么做。 I want to put the hex data in a variable 如果您有另一种方法来提取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'
    
    2 回复  |  直到 5 年前
        1
  •  1
  •   Ori Marko    6 年前

    你应该使用 Integer.toHexString

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

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

    vars.put("CHALLENGE", Integer.toHexString(vars.get("CHALLENGE").getBytes()));
    
        2
  •  0
  •   Dmitri T    6 年前

    您可以使用以下方式执行转换:

    演示:

    JMeter Groovy Hex Conversion